Avatar billede mik28 Seniormester
30. maj 2010 - 21:12 Der er 14 kommentarer og
1 løsning

Tilføje en onmouseover event på et image objekt

Hej Eksperter

Jeg ønsker at kalde en anden js funktion i forbindelse med en mouseover event.

var b1 = new Image();
b1.src = "billeder/thumb/thumb1.jpg";
b1.onmouseover="visbillede(1)"
document.images.bv1.src = b1.src;

Hvad gør jeg forkert?
Avatar billede majbom Novice
30. maj 2010 - 21:27 #1
måske dette kan hjælpe dig: http://www.daniweb.com/forums/thread110052.html
Avatar billede mik28 Seniormester
30. maj 2010 - 22:15 #2
Har prøvet med

b1.setAttribute("onmouseover","visbillede();");

det virker ikke. Jeg tester det i første omgang i firefox
Avatar billede majbom Novice
31. maj 2010 - 08:22 #3
prøv med:


function addEvent(elm, evType, fn, useCapture) {
    if (elm.addEventListener) {
        elm.addEventListener(evType, fn, useCapture);
        return true;
    }
    else if (elm.attachEvent) {
        var r = elm.attachEvent('on' + evType, fn);
        return r;
    }
    else {
        elm['on' + evType] = fn;
    }
}
Avatar billede claes57 Ekspert
31. maj 2010 - 08:41 #4
ret fra
b1.setAttribute("onmouseover","visbillede();");
til
document.getElementById("b1").setAttribute("onmouseover","visbillede();");

hvis du altså har en id="b1" på billedet.
Avatar billede mik28 Seniormester
31. maj 2010 - 10:37 #5
tak for hjælpen.
Avatar billede mik28 Seniormester
31. maj 2010 - 10:43 #6
Jeg skal bruge 9 billeder på siden. Jeg kan selvfølgelig oprette dem fra en ende af, men jeg kunne godt tænke mig at lægge dem ind i en for løkke da det jo kun er tallene som er forskellen. Jeg har prøvet med følgende

var i=1;

for (i=1;i<=9;i++)
{
var b+i = new Image();
b+i.src = "billeder/thumb/ladida"+i+"thumb.jpg";
b+i.height = 50;
b+i.width  = 50;
  document.getElementById("bv"+i+").setAttribute("onmouseover","visbillede("+i+");");
document.images.bv+i.src = b+i.src;
document.images.bv+i.height = b+i.height;
document.images.bv+i.width = b+i.width;
}
Avatar billede claes57 Ekspert
31. maj 2010 - 11:15 #7
document.getElementById("bv"+i+").setAttribute("onmouseover","visbillede("+i+");");
jeg tror, javascript bliver forvirret med " så skift et par ud med ', fx
document.getElementById("bv"+i+").setAttribute("onmouseover","visbillede('+i+');");
Avatar billede jokkejensen Novice
31. maj 2010 - 11:25 #8
onmouseover er ikke en attribut men en event

document.getElementById("bv"+i+").mouseover = visbillede(i);
Avatar billede mik28 Seniormester
31. maj 2010 - 13:41 #9
Det jeg ikke forstår er hvordan jeg får givet image objekterne forskellige navne så jeg kan referere til dem. Jeg kan jo ikke skrive
var b+i = new Image();
men hvad skriver man så?
Avatar billede mik28 Seniormester
31. maj 2010 - 14:21 #10
Det endte med at blive således

var i=1;
    for (i=1;i<=9;i++)
    {
    if(i==9){hojde=h1;brede=b1;}
   
    var b = new Image();
  b.src = "billeder/thumb/ladida"+i+"thumb.jpg";
    b.height = hojde;
    b.width  = brede;
 
  document.getElementById("bv"+i).setAttribute("onmouseover","visbillede("+i+");");
  document.getElementById("bv"+i).setAttribute("height",b.height);
  document.getElementById("bv"+i).setAttribute("width",b.width);
  document.getElementById("bv"+i).setAttribute("src",b.src);
    }
Avatar billede mik28 Seniormester
11. juli 2010 - 15:09 #11
lægger I nogle svar
Avatar billede majbom Novice
11. juli 2010 - 16:27 #12
jeg springer over
Avatar billede majbom Novice
04. november 2010 - 13:46 #13
husk at få lukket spørgsmålet :)
Avatar billede mik28 Seniormester
04. januar 2011 - 13:31 #14
Jeg vil gerne lukke spørgsmålet, hvis I vil ligge nogen spørgsmål
Avatar billede mik28 Seniormester
24. januar 2011 - 11:48 #15
lukker og slukker
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