06. november 2006 - 23:55Der er
5 kommentarer og 1 løsning
Menu problem ved onclick/onmouseover
Hej
Jeg har en menu, som har 3 funktioner.
Her er mouseover: <script language="JavaScript"> function rollIn(imgName) { if (document.images) { document[imgName].src=eval(imgName + "on.src"); } }
Denne sørger for billed til det menupunkt der er valgt og fravælge alle andre:
var buttonClicked = null; function clickButton(imgName) { var num = parseInt(imgName.substring(7),10); for (i=1;i<8;i++) { if(i!=num) { imgOff="button_"+i+"_"; document[imgOff].src=eval(imgOff + "off.src"); } } buttonClicked= imgName; }
Så dermed skulle det valgte billed blive gemt i buttonClicked.
Så har jeg følgende til mouseout: function rollOut(imgName) { if (document.images&&imgName!=buttonClicked) { document[imgName].src=eval(imgName + "off.src"); } } </script>
Hvor der tjekkes på at det ikke er det valgte buttonClicked vi er på.
Det er sådan jeg har forstået koden, men alligevel så laves der en rollout efter klik på menu hvis jeg ikke hurtigt fjerner musen, derved mister man det at man kan se hvilket menupunkt man er på. Det er som om den ikke bruger buttonClicked til noget som helst...
De tre funktioner, du har, ser ud som om de kunne virke, hvis alle udvendige betingelser var opfyldt. Det er ikke let at finde fejl i kodefragmenter. For at tydegliggøre kunne du vise (et fragment af) den HTML-kode der udviser problemet.
PS: Det er ikke nødvendigt med 'eval()' for at lægge to strenge sammen. (Jeg gætter på at parameteren imgName er en streng...)
Jeg tror måske problemet består i at jeg har koden indlejret i asp og dette er i en include fil så ved klik på et menupunkt så kommer jeg til en ny side, hvor menu igen er include og så har den jo sikkert glemt hvad buttonclicked var...
Havde ikke set dit svar, men har ikke gjort dette, men puttede en ekstra query på linket som jeg fangede og så gemte det i session og tjekkede både på rollout og rollin, og dette fik det til at virke.
Synes godt om
Ny brugerNybegynder
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.