onClick frame steuern
Olli
- javascript
Hallo liebes Forum,
erstmal, bevor mich hier alle dumm anmachen :
Ja, ich habe im Forum nachgeschaut, ja auch im FAQ, und ebenso im SelfHTML ....
also, ich versuche seit nunmehr 3 Tagen erfolglos, dieses verfluchte onClick="self.location.href='home.html' target=rechts" zu verstehen, und in meinem Projekt einzubinden.
Leider klappt es alles nie, und ich habe wirklich alles versucht.
Mir bleibt jedoch trotz SelfHTML immer noch verborgen, ob es sich bei
self.location.href o.ä. um eine Konstante hanelt, oder ob ich self und location und href ersetzen muss ?!?! sethen diese Begriffe nur für andere Werte oder ? :S
Am besten ich poste hier mal mein Beispiel, vielleicht ist ja doch jemand so lieb und hilft mir, allerdings hätte ich schon vorher gefragt, wenn ich nicht das hier als die letzte Möglichkeit sehen würde (und angst hätte, da ich das Forum nicht 100%ig komplett durchgelesen habe ...., und wahrscheinlich hier eh nur als blöde und nervig beschimpft werde ...)
Also, bitte habt mitleid, ich kann ja nicht dafür, dass es hier im Self HTML und Forum 1000 Beispiele gibt, aber keines davon 100%ig aufklärt, und die Beispiele nur verwirren ....
Also, hier mein Quelltext :
<tr>
<td>
<a href="javascript:;" target="_top" onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); "parent.location.frames['NAVMenue'].href='SubNAVMenue_2.htm'"" onMouseOver="MM_nbGroup('over','eins','F_m_over_full.jpg','',1)" onMouseOut="MM_nbGroup('out')"><img name="eins" src="F_inactive_full.jpg" border="0" alt="" onload="">
</a>
</td>
</tr>
Es handelt sich um ein Navigationsmenue, und durch klicken soll sich das Bild für die geklickte Fläche ändern, und der IFrame namens SubNAVMenue soll mit der Seite "SubNAVMenue_2.htm" gefüttert werden.
Das Navigationsmenue, ohne meine versuche den Frame SubNAVMenue zu verändern, funktioniert einwandfrei. Es wurde mit Dreamweaver gemacht, jetzt versuche ich es nur ein wenig zu erweitern.
Ich hoffe mir kann jemand helfen, und bitte motzt mich nicht an, ich zwinge ja auch niemanden was zu schreiben, oder das hier zu lesen.
Mit freundlichen Grüssen, Olli
Sorry, Nachtrag :
Meine Hauptseite heisst "Main.htm", und sowohl das Navigationsmenue, als auch das SubNavigationsmenue befinden sich in IFrames.
M.f.G. Olli
Vielen Dank für Deine superschnelle Antwort Pete :)
Da war ich anscheinend ja schon ganz nahe dran ...
Du schriebst :
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.location.frames['SubNAVMenue'].href='SubNAVMenue_2.htm;"
<<
sollte es jedoch vielleicht nicht :
<<
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.location.frames['SubNAVMenue'].href='SubNAVMenue_2.htm';"
heissen ?
Ich baue das jetzt mal schnell ein, und dann melde ich mich noch mal.
Mit freundlichen Grüssen, Olli.
Hallo nochmals,
ich habe das jetzt eingebaut, und jetzt meckert der Explorer :
<<
A Runtime Error has occured.
...
Error:'parent.location.frames.SubNAVMenue' ist Null oder kein Objekt
Woran könnte das denn nun liegen ?
Mit freundlichen Grüssen, Olli
Und der letzte Eintrag,
ich habe den Fehler gefunden :D
*spring rum* *freu*
und zwar muss es
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.frames['SubNAVMenue'].location.href='SubNAVMenue_2.htm';"
<<
heissen.
Mit freundlichen grüssen, Olli.
Hallo Olli,
ich habe den Fehler gefunden :D
*spring rum* *freu*
und zwar muss es
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.frames['SubNAVMenue'].location.href='SubNAVMenue_2.htm';"
<<
heissen.
Ich will dir ja die Freude nicht verderben, aber ich habe Zweifel, ob das auch in anderen Browsern als dem Internet-Explorer funktioniert. Du arbeitest doch nach eigenem Bekunden mit zwei Iframes und meines Wissens bezieht nur der MSIE auch Iframes ins Frames-Objekt ein.
Deshalb schreibe doch lieber als zweite Anweisung Folgendes:
parent.SubNAVMenue.location.href='SubNAVMenue_2.htm';
Ein direktes Ansprechen der Iframes über ihren Namen ist browserübergreifend besser zu realisieren, als wenn man den unnötigen Umweg über das Frames-Objekt geht.
Gruß Gernot
Hi,
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.frames['SubNAVMenue'].location.href='SubNAVMenue_2.htm';"
Ja, die geliebten Dreamweaver Scripts ... >;->
Du arbeitest doch nach eigenem Bekunden mit zwei Iframes und meines Wissens bezieht nur der MSIE auch Iframes ins Frames-Objekt ein.
Sicher?
Gruß, Cybaer (IFrames vermeidend, deswegen zu faul zum ausprobieren, aber wissbegierig ;-))
Hallo Cybaer,
Ja, die geliebten Dreamweaver Scripts ... >;->
Der Resize-Fix für Netscape 4.1 von Dreamweaver ist aber wirklich Klasse, nur braucht den heutzutage wahrscheinlich auch keiner mehr.
Du arbeitest doch nach eigenem Bekunden mit zwei Iframes und meines Wissens bezieht nur der MSIE auch Iframes ins Frames-Objekt ein.
Sicher?
Absolut sicher, ich selbst habe deswegen, bis ich vor kurzem endlich Sven Rautenbergs Tipps & Tricks zu Fensterzugriff las, noch mit folgendem wahnsinnigen Konstrukt gearbeitete, deshalb Warnung an alle die dies lesen: Alles zwischen "schnipp" und "schnapp" bitte _NICHT_ zum Vorbild nehmen!
***schnipp***
function wechsel () {
if(document.getElementById&&document.all) {
document.frames['meinIframe'].location.href='neueSeite.html';
} else {
if(document.all) {
document.all['meinIframe'].src='neueSeite.html';
} else {
document.getElementById('meinIframe').src='neueSeite.html';
}
}
}
***schnapp***
Wobei ich schon gar nicht mehr weiß, wie sich die neueren Opera-Versionen, die sowohl die document.getElementById-Methode als auch document.all-Objekt verstehen, dabei verhalten haben.
Aber mittlerweile bin ich ja durch die Lektüre von Svens Artikel schlauer und mache das wie gesagt, indem ich den Iframe mit seinem Namen direkt anspreche:
meinIframe.location.href='neueSeite.html';
Ist ja auch viel weniger Tipparbeit für mich und der Rechner dankt es mir bestimmt auch.
Gruß Gernot
<a href="javascript:;" target="_top" onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); "parent.location.frames['NAVMenue'].href='SubNAVMenue_2.htm'"" onMouseOver="MM_nbGroup('over','eins','F_m_over_full.jpg','',1)" onMouseOut="MM_nbGroup('out')"><img name="eins" src="F_inactive_full.jpg" border="0" alt="" onload="">
Es handelt sich um ein Navigationsmenue, und durch klicken soll sich das Bild für die geklickte Fläche ändern, und der IFrame namens SubNAVMenue soll mit der Seite "SubNAVMenue_2.htm" gefüttert werden.
Du verweist auf einen Frame namens "NAVMenue" :
parent.location.frames['NAVMenue'].href='SubNAVMenue_2.htm
Richtig müsste es wahrscheinlich
parent.location.frames['SubNAVMenue'].href='SubNAVMenue_2.htm
heißen.
Des weiteren hast du am Ende zweimal hintereinander Doppel-Anführungszeichen verwendet:
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); "parent.location.frames['NAVMenue'].href='SubNAVMenue_2.htm'""
Versuchs mal mit:
onClick="MM_nbGroup('down','group1','eins','F_active_full.jpg',1); parent.location.frames['SubNAVMenue'].href='SubNAVMenue_2.htm;"
Pete