ich habe ein Problem mit dem JS-Script von Google. Es scheint mir, als verhindere es die Ausführung meiner Javascript-Funktionen. Ich habe mal eine Beispielseite zusammengebaut:
<html>
<head>
<SCRIPT language="JavaScript">
function checkFrameset() {
if(parent.frames.length < 1)
location.href="i_suche.htm?" + location.pathname;
}
In dieser Funktion soll normalerweise meine obige Funktion ausgeführt werden und die Indexseite geladen werden. Man kann meine Funktion ja auch abändern und sie irgendwas schreiben lassen. Das Problem ist aber einfach, daß, wenn der letzte Teil des Googlecodes aufgerufen wird, also das js-Script, meine Funktion einfach nicht ausgeführt wird. Das sieht bei mir dann so aus, daß nur die normale Seite geladen wird. Wenn ich die Zeile mit dem JS wegnehme dann wird mein Code ausgeführt und die Seite in meine Framedefinitionen eingebettet. Immer, wenn das js-Script ausgeführt wird funktioniert meine Funktion nicht mehr.
Woran liegt das und wie verhindere ich, daß das passiert? Ich will selbstverständlich auch Javascript nutzen können. Liegt der Fehler vielleicht woanders doch?
Ich bin zwar weder der JS- noch der Frames-Experte, aber das Google-JS schreibt ja einen IFrame in die Seite. Ergo hast Du zwei Frames bzw. parent.frames.length ist nicht <1. Denke ich jedenfalls...
Hm. Eigentlich sollte sich parent doch darauf beziehen ob die angezeigte Seite in einem Frame eingebettet ist und damit einen Elter hat. Oder?
Teste...teste...
Scheint du hast Recht. Verstehe zwar nicht, wie das kommt, da ich auch nicht so gut in Javascript bin aber wenn ich die Abfrage ersetze mit if(!parent.haupt) und haupt ist die Bezeichnung für einen Frame in meinen framedefinitionen dann funktioniert es.
Es gibt/gab einen Zusatz zu Framesets /Frameseiten vom Adsense-Team mal....ist allerdings in 2003 gewesen und musste unbedingt VOR allem anderen Adsense-Code in die site.... falls das dein prob ist so wie ich es verstehe, würde ich mal die Adsense-guys fragen.