webForumDet fria alternativet

getElementById()

4 svar · 252 visningar · startad av Gaski

GaskiMedlem sedan juni 2000325 inlägg
#1

Varför kan man inte skriva så här:

document.getElementById(obj).style.top = document.getElementById(obj).style.top + 5

Vad ska man skriva istället?

------------------
<A HREF="http://www.gaski.net" TARGET=_blank>Datorer är inte smarta, de bara tror att de är det.</A>

Erik JuhlinMedlem sedan maj 20007 625 inlägg
#2

Jag kanske har fel, men jag tror document.getElementById(obj).style.top är en sträng som kan vara typ 10px...

------------------
/Erik
www.juhlin.nu /sk8files/ /mp3d/

BroskanMedlem sedan mars 2000121 inlägg
#3

Skriv så här då.

document.getElementById(obj).style.top = parseFloat(document.getElementById(obj).style.top) + 5 + "px";

//Broskan

GaskiMedlem sedan juni 2000325 inlägg
#4

Det blir Ogilitigt argument på den raden...

------------------
<A HREF="http://www.gaski.net" TARGET=_blank>Datorer är inte smarta, de bara tror att de är det.</A>

BroskanMedlem sedan mars 2000121 inlägg
#5

Ja jag vet inte hur du har skrivit då för det här funkar i min webläsare. IE6.

<HTML>
<HEAD>
<TITLE></TITLE>
<SCRIPT LANGUAGE="JavaScript">
function moveLayer(obj){

document.getElementById(obj).style.top = parseFloat(document.getElementById(obj).style.top) + 5 + "px"

}
</SCRIPT>
</HEAD>
<BODY>
<A HREF="#" onClick="moveLayer('lager');" return false;>Flytta lager</A>
<DIV ID="lager" STYLE="position:absolute; widht:100px; text-align:center; background-color:yellow; left:150px; top:150px;">
Mitt lager
</DIV>

</BODY>
</HTML>

//Broskan

Genererad på 384 ms · cache AV · v20260730165559-full.f96bc7eb