Javascript更改位置无法在Chrome或IE上运行

时间:2016-04-19 18:04:21

标签: javascript google-chrome position css-position

通过javascript更改位置可以通过Firefox工作,但不适用于Chrome或IE。

<script language="javascript">
function move (){
  document.cat.style.right=0;
}
</script>
<img src="cat.gif" id="cat" style="position:absolute; right:500; top:500" onClick="move ();">

另外,这是我第一次在这里问一些问题,所以如果我做错了,请告诉我。

3 个答案:

答案 0 :(得分:0)

var catStyle = document.getElementById(&#39; cat&#39;);     catStyle.style.right = 0;

答案 1 :(得分:0)

正如您所发现的,使用document.<id>仅在Firefox中受支持。最好使用document.getElementById('cat')

另外,除非绝对必要,否则尽量避免使用style属性。最好将所有CSS放在style标记中,或者更好的是包含样式表。此外,您缺少rightleft属性的单位 - 始终确保所有数字都有单位。我假设在这种情况下你打算使用像素。

这应该符合您的预期(为了便于说明,我更改了图片的网址):

function move (){
    document.getElementById('cat').style.right=0;
}
#cat {
    position:absolute;
    right:500px;
    top:500px;
}
<img src="http://placekitten.com/200/300" id="cat" onClick="move();">

答案 2 :(得分:0)

<img    
  src="cat.gif" 
  id="cat" 
  style="position:absolute; right:500px; top:500px;" 
  onClick="move ();"
>

<script>

   function move (){
     document.getElementById('cat').style.right="0px";
   }

</script>

使用具有您风格的单元可以帮助JavaScript启动。您可以使用getElementById或querySelector来获取DOM元素。

这是JSFiddle为您提供了一个可以使用您提供的示例的空间:https://jsfiddle.net/8a2drg7p/1/