Avatar billede conehead Nybegynder
15. marts 2006 - 11:45 Der er 8 kommentarer og
2 løsninger

Kan nogen forklare følgende?

Jeg har en "ren" css drop down menu der benytter sig af scriptet som vist nedenunder. Menuen fungerer fint nok, men jeg er lidt usikker på hvad der sker.

1. Hvad returneres i sfHover?
2. Hvor er sfHover defineret?

sfHover = function() { var sfEls = document.getElementById("nav").getElementsByTagName("LI"); for (var i=0; i<sfEls.length; i++) { sfEls[i].onmouseover=function() { this.className+=" sfhover"; } sfEls[i].onmouseout=function() { this.className=this.className.replace(new RegExp(" sfhover\\b"), ""); } } }

if (window.attachEvent) window.attachEvent("onload", sfHover);
Avatar billede conehead Nybegynder
15. marts 2006 - 11:46 #1
Avatar billede softspot Forsker
15. marts 2006 - 11:57 #2
sfHover bliver defineret i 1 linie og er en function som kaldes på onload (det er det den sidste linie sørger for - hvis altså det er IE, hvis jeg ikke tager meget fejl).

sfHover sørger såvidt jeg kan tyde for at sætte events og styles op på menuen (hvis ellers menuen er den der har id=nav).
Avatar billede conehead Nybegynder
15. marts 2006 - 12:40 #3
ja ok. Hvad med "window.attachEvent("onload", sfHover);"
Hvad er årsagen til, at funktionen ikke bare kaldes vha <body onload="sfHover">?

Er der en forskel?
Avatar billede softspot Forsker
15. marts 2006 - 12:48 #4
Den er jeg ikke helt sikker på, men jeg vil tro det er et temeperamentsspørgsmål, hvorvidt man ønsker at bruge den ene eller den anden metode (du kunne også have brugt window.onload = sfHover;). Der er sikkert en bedre forklaring på hvorfor man skal bruge attachEvent, men jeg synes ikke jeg plejer at have problemer med at bruge den variant jeg selv nævner, nemlig

window.onload = sfHover;
Avatar billede roenving Novice
26. marts 2006 - 06:46 #5
Min reference siger at attachEvent har en fordel, nemlig at man kan detache den, altså fjerne den, når den ikke skal bruges mere, samt at den returnerer true, hvis tilknytningen lykkes, men det er jo så ikke udnyttet her ...
Avatar billede conehead Nybegynder
26. marts 2006 - 14:45 #6
Ok tak for hjælpen. Jeg vil gerne dele pointene mellem jer
Avatar billede softspot Forsker
26. marts 2006 - 19:07 #7
Jamen, så får du lige et svar - velbekomme :)
Avatar billede roenving Novice
29. marts 2006 - 06:30 #8
Oki '-)
Avatar billede softspot Forsker
03. april 2006 - 10:10 #9
Tak for point :)
Avatar billede roenving Novice
03. april 2006 - 17:39 #10
-- og jeg takker også for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester