Avatar billede henrik Nybegynder
17. december 1999 - 02:03 Der er 6 kommentarer og
1 løsning

Kan et billede have mere end et "name"???

eks.:

<a href="activity.html" onmouseover="on('image1'); on('image2');" onmouseout="off('image1'); off('image2')"
                        onClick="stay('image1');stay('image2')">


<img src="activity/menu1_off.gif" width=120 height=19 border=0 alt="" name="image1">

<img src="activity/menu2_off.gif" width=120 height=19 border=0 alt="" name="image2">

Denne funktion skal gå igen 5 gange, hvor de ene billede (image2) skal skiftes ud af forskellige andre billeder
Avatar billede jumper Nybegynder
17. december 1999 - 02:19 #1
Spørgsmålets titel er lidt misvisende, for et billede kan kun have ét name!

Du kan dog godt, som du gerne vil, skifte flere billeder ud samtidig.

Så svaret er ja!

Umiddelbart ser din kode også ud til at virke fint, forudsat at funktionerne on(), off() og stay() virker ;)

/Thor
Avatar billede henrik Nybegynder
17. december 1999 - 02:34 #2
Ja, men prøv at se her: http://sitedesign.dk/temp/

på første knap (link) virker det, men på de sidste 4 knapper skal der være nye billeder til højre...

Hvordan gør jeg???
Avatar billede jumper Nybegynder
17. december 1999 - 02:49 #3
Du skal ændre i din kode.

For det første, drop de følgende linjer:

if (navigator.appVersion.indexOf("2.") != -1){
    check = false;
    }
if ((navigator.appVersion.indexOf("3.") != -1) && (navigator.appName.indexOf("Explorer") != -1)){
    check = false;
    }
else {
    check = true;
    }

De kan erstattes med det her:

check = (document.images) ? true : false

For det andet, ret funktionerne on() og off() så de ser sådan her ud:

function on(name,second){
        if (check == true){
    imageon(name);
    document["newPic"].src = second
    }
}
function off(name,second){
        if (check == true){
    imageoff(name);
    document["newPic"].src = second
    }
}

Billedet der skal skiftes ved hvert onmouseover og onmouseoff skal så have en name=newPic, og du skal lave en ny onmouseover og onmouseoff sætning:

onmouseover="on('image1','sjov1.gif')" onmouseout="off('image1','sjov.gif')"

Dermed kalder du blot funktionen on() med den ekstra parameter, f.eks. sjov1.gif eller sjov.gif, og billedet newPic bliver dermed skiftet til hvad du kalder on() med som ekstra parameter.

/Thor
Avatar billede cldu Nybegynder
17. december 1999 - 12:21 #4
ganske pæn side!
Avatar billede henrik Nybegynder
17. december 1999 - 13:24 #5
PERFEKT!

Jeg kunne dog ikke få nedenstående til at virke:

For det første, drop de følgende linjer:

                    if (navigator.appVersion.indexOf("2.") != -1){
                        check = false;
                        }
                    if ((navigator.appVersion.indexOf("3.") != -1) && (navigator.appName.indexOf("Explorer") != -1)){
                        check = false;
                        }
                    else {
                        check = true;
                        }

                    De kan erstattes med det her:

                    check = (document.images) ? true : false

Avatar billede henrik Nybegynder
17. december 1999 - 13:32 #6
Hvordan får jeg billederne til at forloade i scriptet?
Avatar billede jumper Nybegynder
18. december 1999 - 18:02 #7
Jeg mente blot at du skulle fjerne linjerne hvor du tjekker på browsernavn og versionsnummer og istedet indsætte

check = (document.images) ? true : false

Du preloader i forvejen billederne.

/Thor
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