MEM*_*MEM 11 javascript browser jquery
我们经常在这里和那里阅读,我们必须将我们的js代码放在页头部分或之前(抱歉)结束正文标记.关于这一点的讨论,我只是想知道浏览器对这些东西的阅读顺序是什么(考虑到它们在这里做的相同):
我们可以放置:
$(document).ready(function(){
Run Code Online (Sandbox Code Playgroud)
无论页面结构在哪里,因为我们正在使用$(document).ready或者我们是否应该将它放在头部?
任何人都可以澄清一下.
如果我的问题不明确,我可以改写.
Chr*_*ker 14
你可以把一个文档中任何地方的脚本.最佳实践通常建议在脚本中放置脚本以解决页面加载性能问题.此外,最佳实践通常建议将脚本放在一起以便于维护.
但是,根据规范,对文档放置script标记的位置没有限制.您可以将它们放在标题中,身体底部,整个文档上或其任何组合中.
$(document).ready无论在文档中的位置如何,jQuery构造的使用都具有相同的结果.关键是要了解这个构造背后的功能:
虽然JavaScript提供了在呈现页面时执行代码的加载事件,但在完全接收到所有资产(如图像)之前,不会触发此事件.
所以,ready类似document.onload,但不一样.代码在哪里,如果在document.onload触发时或jQuery触发时执行它都无关紧要ready.代码在文档中的位置仅在未被某个事件处理程序/侦听器包装时才有意义.
对位置的唯一限制$(document).ready是在包含jQuery库之前不会发生这种情况.$(document).ready是使用jQuery,所以如果jQuery不存在....你不能使用它.
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script>
alert('executed as soon as it is reached (as the document is downloaded)');
$(document).ready(function () { alert('on jQuery ready'); });
</script>
</head>
<body onload="alert('executed on document.onload event');">
<script>
alert('executed as soon as it is reached (as the document is downloaded)');
$(document).ready(function () { alert('on jQuery ready'); });
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
文档
ready- http://api.jquery.com/ready/