登录

javascript - 请问各脚本引擎对DOM树的解析和脚本执行顺序有何不同?

后端小粗心不小心帮我修出的一个BUG,具体问题是这样的,下面这段代码在IE下执行是有BUG的,而在FF和Chrome下没问题。

<html>
<head>
<script src="jQuery.js" ></script>
</head>

<body>
<p id="4ex">
<p>...此处省略一万字...</p>
<script>
<!--
  //有错误的代码脚本位置
  $("#4ex").on(...);
  ...
-->
</script>
</p>    <!-- 代码1:p在这里结束 -->
</body>
</html>

改正位置后,BUG解除。代码如下:

<html>
<head>
<script src="jQuery.js" ></script>
</head>

<body>
<p id="4ex">
<p>...此处省略一万字...</p>
</p>    <!-- 代码2:p在这里结束 -->
<script>
<!--
  //无错误的代码脚本位置
  $("#4ex").on(...);
  ...
-->
</script>
</body>
</html>

估摸着是脚本引擎对脚本的优化执行或者DOM解析上的不同造成的。一时也找不出个所以然来,望大牛指点。不知道问题说清了没,还要其他补充的尽管问哈~谢谢~

# JavaScript
阿神阿神2185 天前463 次浏览

全部回复(1) 我要回复

  • 迷茫

    迷茫2017-04-10 12:45:45

    用下面这句来测试,没测出差别。IE8 & Chrome23。你确定是这里的问题?

    $("#4ex").mouseover(function() { alert(1);});

    回复
    0
  • 取消回复发送