javascript应该放在$(document).ready(function()里面?

时间:2016-03-04 05:05:05

标签: javascript jquery html

$(document).ready(function() {是否意味着所有javascript文件都已下载,因此任何js init或func都应该有效?

所以总是把js放在$(document).ready(function() {里面是个好习惯吗?

4 个答案:

答案 0 :(得分:1)

.on是页面生命周期的一部分,在为页面加载所有资源(HTML,CSS和JS文件)之后运行。

你应该在这里使用你需要在页面首次加载时运行的函数,所以通常初始化插件,首先运行函数并将事件附加到元素。

在页面加载后可以运行的任何其他函数都可以在此范围之外定义。

请注意,如果您要动态插入DOM元素,那么附加到该类型或类(例如)的任何事件都不会附加到它们,而无需重新附加,或使用{{1}}并附加到文档本身。

答案 1 :(得分:0)

来自jQuery文档:

  

描述:指定在DOM完全加载时要执行的函数。

这意味着您可以指定在DOM完全加载后运行的函数,即可以与javascript交互。

答案 2 :(得分:0)

here

复制以下内容

$(document).ready(...)

加载所有DOM时触发(即使多媒体尚未加载)

$(window).load(...)

加载所有内容时显示消息(显示加载过程的进度指示器)消失。

现在这是我的建议(不是来自那个链接) 我认为更好的方法是将脚本标记放在正文的末尾,就像这样,因为它确保在加载其他所有内容时加载脚本

<html>
<head></head>
<body>
<div>
bla bla bla
</div>
<script src="1"></script>
.
.
<script src="n"></script>
<script>console.log('hello');</script>
</body>
</html>

答案 3 :(得分:0)

使用ready()在加载文档后使函数可用:   例如:

$(document).ready(function(){
    $("button").click(function(){
        $("p").slideToggle();
    });
});

定义和用法 当加载DOM(文档对象模型)时,就会发生就绪事件。

因为此事件在文档准备好后发生,所以它是获取所有其他jQuery事件和函数的好地方。就像上面的例子一样。

ready()方法指定ready事件发生时会发生什么。 注意:ready()方法不应与<body onload="">.

一起使用