插入格式正确时,Javascripts无法正常工作

时间:2012-07-08 15:32:51

标签: javascript html

我正在开发一个网页,并在页面上使用一些javascripts来移动一些html元素,但我发现<!doctype html>时javascript代码无效 或者在页面顶部添加任何类型的<!doctype>!这个错误是什么?

我搜索谷歌,我发现<!doctype html>是正确的格式,即使stackoverflow源代码有它但是当我使用它javascripts不工作,但当它删除脚本工作正常&amp; html对象正在移动,但由于删除<!doctype html>

,我的样式消失了
<!doctype html>   when this line removed it works(html element is moving)
<html>
<head>
    <script type="text/javascript">

        function scrollDiv(){
                  var obj = document.getElementById("movingDiv");
                  obj.style.left = 100;
                  obj.style.top = 10;
                  }

                document.onclick = scrollDiv;

    </script>
</head>
<body  class="body">
<div class="maindiv" id="mainDiv">
  <div class="html_js_code" style="text-align:center;">

  <div id="movingDiv" style="position:absolute;left:100pt;top:10pt;border:1px blue 

outset;width:160px;background-color:lightyellow;font-weight:bold;">Moving Div</div>
</div>
</div>
</body>
</html>

2 个答案:

答案 0 :(得分:7)

如果没有doctype,浏览器会假定未标记的长度以像素为单位。使用doctype,它们需要一个明确的单元。

obj.style.left = "100px";
obj.style.top = "10px";

答案 1 :(得分:-1)

你也忘了把括号放在你调用的函数的末尾。我也很确定你错误地传递了它。我相信它应该是这样的:

document.onclick = scrollDiv();

document.onclick(scrollDiv());