Avatar billede bbe1379 Nybegynder
29. december 2000 - 10:38 Der er 7 kommentarer og
1 løsning

MouseOver virker ikke inde i <Div>-tag i NN???

Jeg har lavet en menu med layers, der kommer frem, når man kører musen over en knap, og i layeret, der popper op, er der nogle knapper, der skifter onMouseOver......men skidtet virker ikke i NN, når knapperne ligger inde i div-tag\'et - virker fint udenfor ( og i IE naturligvis)

Skal man henvise til layeret, som f.eks. document.layer1.imgname.......


Avatar billede bbe1379 Nybegynder
29. december 2000 - 10:41 #1
....det er altså kun mine mouseOvers INDE i div-tag\'et, der ikke virker. Menuen popper fint op, men billederne inde i virker ikke.
Avatar billede olebole Juniormester
29. december 2000 - 10:42 #2
<ole>
if (document.layers) {
  document.layers.lagID.document.images[\'ditPicNavn\'].src = \"en_eller_anden.gif\"
}
/mvh
</bole>
Avatar billede olebole Juniormester
29. december 2000 - 10:44 #3
NS ser det, der ligger i et <div>, som et selvstændigt dokument.  :)
Avatar billede bbe1379 Nybegynder
29. december 2000 - 10:54 #4
...hmm, lyder lovende - jeg tænkte nok at det var så\'n det hang sammmen.

Kan du også fortælle mig hvorfor denne funktion ikke virker:

function imageon(name,id) {
    if (document.layers) {
    document.layers.[\'divMenu\'+id].document.images[name].src = eval(name + \"on.src\");
    }
    else document[name].src = eval(name + \"on.src\");
}
Avatar billede olebole Juniormester
29. december 2000 - 11:01 #5
...det skal vel være noget:
  eval(\"document.layers.[\'divMenu\"+id+\"\'].document.images[\"+name+\"].src\") = eval(name + \"on.src\");
...?
Avatar billede bbe1379 Nybegynder
29. december 2000 - 11:56 #6
Takker olebole!

Det var ikke helt korrekt, det du skrev - men det førte mig på rette vej.

\"document.layers.lagID\" skulle være \"document.layers[lagID]\"

(i hvert fald når den henter en værdi)

...funktionen endte således. Du må meget gerne sige hvis du kan se nogle fejl/dumme ting i den - den virker, men kan sikkert blive bedre.


function on(name,id,typeis) {
    if (check == true && (typeis = \'menu\')){   
        if (ns4) document.layers[\'divMenu\'+id].document.images[name].src = eval(name + \"on.src\");
        else if (ie4) document[name].src = eval(name + \"on.src\");
        }
    if (type = \'but\') document[name].src = eval(name + \"on.src\");   
}
Avatar billede olebole Juniormester
29. december 2000 - 12:09 #7
Ja, eller \'dot\'-notation:
document.lagID.document............osv...........
...undskyld sammenblandingen :))
Mon ikke der skal stå:
  if (typeis = \'but\')
...?
/mvh
Avatar billede cyberesben Nybegynder
29. december 2000 - 15:34 #8
bbe1379>> jeg ville droppe NS4, der er sgu ingen der bruger den mere. I stedet ville jeg kode til DOM, altså det som W3C har fastslået, det virker lige godt i IE5 og NS6!

bare lige min mening
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