Submenüs funktionieren nur mit Internet Explorer
breaddes
- javascript
0 MudGuard0 Dieter Raber0 MudGuard
0 Dieter Raber0 fastix®0 fastix®
Ich habe hier ein Javascript für ein Navigationsmenü. Siehe http://www.revive-biberach.com/index/down.htm (Links funktionieren noch nicht). Mit dem Internet Explorer funktioniert alles hervorragend. Rufe ich die Seite mit Netscape auf, werden die Submenus nicht aufgerufen. Wo liegt das Problem?? Hier ist der Code:
function show(whatsubmenu) {
if (activated) {
if (document.all) {
closesubmenu.visibility="hidden"
closesubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu.posTop=y+ydistance
opensubmenu.posLeft=x+xdistance
opensubmenu.visibility="visible"
timer=setTimeout("hidesubmenu()",standstill)
}
if (document.layers) {
closesubmenu.visibility="hidden"
closesubmenu=eval("document."+whatsubmenu)
opensubmenu=eval("document."+whatsubmenu)
opensubmenu.top=y+ydistance
opensubmenu.left=x+xdistance
opensubmenu.visibility="visible"
timer=setTimeout("hidesubmenu()",standstill)
}
}
}
Hi,
Ich habe hier ein Javascript für ein Navigationsmenü. Siehe http://www.revive-biberach.com/index/down.htm (Links funktionieren noch nicht). Mit dem Internet Explorer funktioniert alles hervorragend. Rufe ich die Seite mit Netscape auf, werden die Submenus nicht aufgerufen. Wo liegt das Problem?? Hier ist der Code:
if (document.all) {
nur bis IE 4 notwendig
if (document.layers) {
nur bis Netscape 4.x lauffähig.
Benutze DOM, dann klappts in allen modernen Browsern - Details siehe Selfhtml.
cu,
Andreas
Hallo Andreas,
Sag jetz nicht, ich haette bei Dir abgekupfert :-)
Dieter
Hi,
Sag jetz nicht, ich haette bei Dir abgekupfert :-)
Du hast bei mir abge_schrieben_ ;-) SCNR ;-)
cu,
Andreas
Hallo,
if (document.all) {
ist IE spezifisch
if (document.layers) {
ist Netscape 4.x spezifisch
Lies in SelfHTML das Kapitel ueber Zugriff via DOM
Dieter
Moin!
function show(whatsubmenu) {
if (activated) {
if (document.all) {
/* Das versteht eben nur der IE4 */
closesubmenu.visibility="hidden"
closesubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu.posTop=y+ydistance
opensubmenu.posLeft=x+xdistance
opensubmenu.visibility="visible"
}
if (document.layers) {
/* Das versteht eben nur der NS4 */
closesubmenu.visibility="hidden"
closesubmenu=eval("document."+whatsubmenu)
opensubmenu=eval("document."+whatsubmenu)
opensubmenu.top=y+ydistance
opensubmenu.left=x+xdistance
opensubmenu.visibility="visible"
}
if (document.getElementByID(whatsubmenu)) {
/* Das versteht eben nur der IE5/6, Netscape >=6, Mozilla, Opera>=5 , Konquerror*/
document.getElementByID[whatsubmenu].style.visibility="hidden";
document.getElementByID[whatsubmenu].style.top= (y*1.0+ydistance*1.0) + "px";
document.getElementByID[whatsubmenu].style.left= (x*1.0+xdistance*1.0) + "px";
document.getElementByID[whatsubmenu].style.visibility="visible";
}
timer=setTimeout("hidesubmenu()",standstill)»»
}
}
Wobei ich aber nicht so ganz schlau daraus werde, warum Du für opensubmenue und closesubmenue zweimal das selbe einsetzt. Nach Lage der Dinge lässt Du Dein Menü verschwinden, verschiebst es und zeigst es wieder an...
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Moin!
function show(whatsubmenu) {
if (activated) {
if (document.all) {
/* Das versteht eben nur der IE4 */
closesubmenu.visibility="hidden"
closesubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu=eval("document.all."+whatsubmenu+".style")
opensubmenu.posTop=y+ydistance
...
Es ist noch viel schlimmer:
Du verwendest closesubmenu.visibility _bevor_ closesubmenu etwas zugewiesen bekommt.
Wüste Copy & Paste- Orgie? - "Denn sie wissen nicht, was sie tun?"
fastix®