15. september 2002 - 11:35
Der er
15 kommentarer og 1 løsning
offsetLeft
Hej, Jeg har lavet et lille script til at finde offsetLeft'en på en tabel, som er centeret på siden, men den siger hele tiden nul. Kan I se hvad problemet er? <html> <head> <title>Menu</title> <style type="text/css"> <!-- //--!> </style> <script language="javascript"> function show(){ var elm = document.getElementById('ramme'); posX = elm.offsetParent; alert(posX.offsetLeft); } </script> </head> <body leftmargin="0" topmargin="0"> <center id="center"> <div id="ramme"><table height="100" style="border:1px solid black;" id="ramme2"> <tr><td align="center"> <table style="border:1px solid black;" id="main"> <tr><td> <font onmouseover="show()">Menu</font> </tr></td> </table> </tr></td> <tr><td align="center"> <table style="border:1px solid black;" id="main2"> <tr><td> Menu2 </tr></td> </table> </tr></td> </table> <div id="menu" style="position:absolute; top:0; left:0; visibility:visible;"> <table style="border:1px solid black;" id="table"> <tr><td style="border-bottom-style:solid; border-bottom-width:1px; border-bottom-color:black;"> Link </tr></td> <tr><td> Link 2 </tr></td> </table> </div> </body> </html>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
15. september 2002 - 12:25
#2
<html> <head> <title></title> <script type="text/javascript"> <!-- function show() { alert(document.all.myTable.offsetLeft); } //--> </script> </head> <body> <table id="myTable" width="200px" align="center" border="1"> <tr> <td><a href="java script:;" onclick="show()">Vis</a></td> </tr> </table> </body> </html>
15. september 2002 - 12:27
#3
Her er en funktion der virker lidt bedre... function getXYcoord ( htmlElemObj ) { // ikke til NS4, men ok i IE4+ og NS6+ var elm = htmlElemObj; var rd = { x:0 ,y:0 }; do { rd.x += parseInt( elm.offsetLeft ); rd.y += parseInt( elm.offsetTop ); elm = elm.offsetParent; } while ( elm ); return rd }; //end getXYcoord ( HTML element object ) -> object{x,y} Sæt den ind, og lav din nuværende funktion om sådan her unction show(){ var elm = document.getElementById('ramme'); pos = getXYcoord(elm); alert(pos.x); }
15. september 2002 - 12:28
#4
Ups... unction = function :)
15. september 2002 - 21:12
#5
det virker desværre ikke?? er der nogen der har andre ideer?
Slettet bruger
16. september 2002 - 15:41
#6
16. september 2002 - 16:51
#7
det virker jo godt. tak for det! og pointene til dig!!!
Slettet bruger
16. september 2002 - 17:00
#8
P.S. Lad være med at bruge font-koden. Specielt ikke til det, du gør.
Slettet bruger
16. september 2002 - 17:00
#9
Altså <font>, lad være med at bruge den. Brug CSS istedet!
16. september 2002 - 17:09
#10
undskyld er det bare mig eller virker din kode heller ikke så godt, den siger jo bare 0 ved både X og Y
Slettet bruger
16. september 2002 - 17:11
#11
Nej, den gør da ej! :) Hvilken browser bruger du?
16. september 2002 - 17:11
#12
internet eksplorer 6.0
16. september 2002 - 17:11
#13
men jeg har selv rettet det
16. september 2002 - 17:12
#14
den skulle måle ud fra 'ramme2' istedet for 'ramme'
Slettet bruger
16. september 2002 - 17:13
#15
Ja, så er det jo lidt svært for scriptet, hvis den ikke får den rigtige id.
16. september 2002 - 21:38
#16
jep, men nu virker det da!
Vi tilbyder markedets bedste kurser inden for webudvikling