Avatar billede mini-man Nybegynder
24. januar 2002 - 13:14 Der er 9 kommentarer og
2 løsninger

mouse-over billede på et bestemt sted

jeg skal ha lavet en mouse over ting så når man holder over et billede så kommer der et andet billede i stedet for..nemt nok. men hvis det billede der kommer frem skal være et bestem sted som kan være lige nøjagtig det sted lige meget hvilken opløsning man ser siden i.

En af mine test design virkede kun i 800 x 600 fordi jeg brugte noget med: absolute: left=150 top = 100. hvad skal jeg bruge..???

Jeg er ikke så god til java script så jeg skal bruge nogle eksempler.

på forhånd tak.

/Mini-man

Avatar billede mini-man Nybegynder
24. januar 2002 - 13:16 #1
test script se: mini-man1.tripod.com
(nb. Det er ikke mig der har lavet designet. Hvis du ser siden i 800x600 er den okay men i andre opløsninger virker den ikke.)
Avatar billede mini-man Nybegynder
24. januar 2002 - 13:19 #2
nå linket virker ikke så glem den sidste kommentar. :(
Avatar billede ras2000 Nybegynder
24. januar 2002 - 15:02 #3
Vil du gerne have at billedet skal vises i den der firkant? Det skulle ikke være så svært.
Avatar billede Slettet bruger
24. januar 2002 - 16:25 #4
Så må du igang med at finde "33.jpg"'s position. Lige et øjeblik...
Avatar billede Slettet bruger
24. januar 2002 - 16:49 #5
OK, nu er den der:

Først skal du udskifte dit første script på din side med dette:

<script>
loaded = false;

function findPosX(objid) {
obj = (document.layers) ? document[objid] : (document.getElementById) ? document.getElementById(objid) : document.all[objid];
    var curleft = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curleft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (document.layers)
        curleft += obj.x;
    return curleft;
}

function findPosY(objid) {
obj = (document.layers) ? document[objid] : (document.getElementById) ? document.getElementById(objid) : document.all[objid];
    var curtop = 0;
    if (document.getElementById || document.all)
    {
        while (obj.offsetParent)
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (document.layers)
        curtop += obj.y;
    return curtop;
}

function vis(billid) {
if (!loaded) return;
stl = (document.layers) ? document[billid] : (document.getElementById) ? document.getElementById(billid).style : document.all[billid].style;
stl.left = findPosX("ruler") + 12;
stl.top = findPosY("ruler") + 12;
stl.visibility = "visible";
}

function skjul(billid) {
if (!loaded) return;
stl = (document.layers) ? document[billid] : (document.getElementById) ? document.getElementById(billid).style : document.all[billid].style;
stl.visibility = "hidden";
}
</script>

Så indsætter i dette i <body>-tagget:

<body onLoad="loaded = true;">

Derefter giver du dit billede "33.jpg" denne id:

<img src="33.jpg" width="125" height="33" alt="" border="0" id="ruler">

Nu skal du ved dine menupunkter indsætte denne kode:

<a href="#" onMouseover="vis('lagNavn')" onMouseout="skjul('lagNavn')"><img src="23.jpg" width="125" height="41" alt="" border="0"></a>

(husk at ændre 'lagNavn' til navnet på laget)

Og til sidst skal du selvfølgelig give din skjulte billed-lag den rigtige id.
Avatar billede mini-man Nybegynder
24. januar 2002 - 21:35 #6
ja det må jeg lige prøve...Men det er ikke fordi det lige skal bruges til den side, jeg skal nok bruge det til en anden side. Men det script som du har skrevet ser da meget godt ud....så jeg prøver det lige og vender tilbage.
Avatar billede mini-man Nybegynder
29. januar 2002 - 09:04 #7
okay nu har jeg sat alle de forskellige ting ind, men hvad skal de skjulte billed lag ændres til.?? nu hedder de.:
<div id="lag1" name="lag1" style="position: absolute; left:643; top:220; width: 200; height:100; z-index: 3; visibility: hidden"><img src="link2.jpg" width="250" height="160" alt="" border="0"></div>
<div id="lag2" name="lag2" style="position: absolute; left:643; top:220; width: 200; height:100; z-index: 3; visibility: hidden"><img src="breast.jpg" width="250" height="160" alt="" border="0"></div>
Avatar billede Slettet bruger
29. januar 2002 - 15:08 #8
Du skal ikke ændre i lagenes navne, men i linkene, der skal fremkalde disse billeder:

<a href="#" onMouseover="vis('lagNavn')" onMouseout="skjul('lagNavn')"><img src="23.jpg" width="125" height="41" alt="" border="0"></a>
Skift 'lagNavn' ud med lagets navn, fx:
'lag2'
Avatar billede Slettet bruger
29. januar 2002 - 15:15 #9
Hvis du smider et link, skal jeg da gerne rette hele koden til for dig!
Avatar billede mini-man Nybegynder
30. januar 2002 - 08:43 #10
oki..
Avatar billede mini-man Nybegynder
18. marts 2002 - 10:10 #11
Jeg har fuldstændig glemt det her spørgsmål.....sorry....jeg lukker det nu men du får dine point.....men fordi jeg ikke gjorde det helt færdig tar jeg lige selv 1 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