我有一个 <div id="dd1" style="left:30px;top:100px;float:left;">xxx</div> 想用js 代码改变div 所在的位置 document.getElementById("dd1").offsetLeft=80; 语句没报错,可它的位置却没有变,还是在30的位置
而 alert(document.getElementById("dd1").offsetLeft);的时候,已变成80了,
这是怎么回事呢,
请各位大侠帮我解决一下。不胜感谢。
而 alert(document.getElementById("dd1").offsetLeft);的时候,已变成80了,
这是怎么回事呢,
请各位大侠帮我解决一下。不胜感谢。
float:left可以不用了。
<body>
<div id="dd1" style="position:absolute;left:100;">111111111111</div>
</body>
<script>
document.getElementById("dd1").style.left='280';
</script>
这哥们忘记写单位了<div id="dd1" style="position:absolute;left:100px;">111111111111</div>
</body>
<script>
document.getElementById("dd1").style.left=280+"px";
</script>
IE的话不写单位好像也没事,FF就必须得写单位了
LZ注意,不光是加了position:absolute,还得将 offsetLeft 改为 style.left
offsetLeft 是只读的,改不了,会报“对象不支持此操作”
obj.style.left=280这样绝对行的。
obj.style.left=280 + "px"这样绝对行的。或者style.pixelLeft = 280;
这两种区别left带px,pixelLeft不带px
看需要吧 还有
obj.style.left=280这个IE下还是可以的
position:relative,不行