事件监听器应该在document.ready函数内部还是无关紧要?

时间:2017-06-08 21:34:54

标签: jquery

当我使用时:

$(document).ready(function(){

});

我的事件监听器(例如$('button').click(function(){})是否应该按照约定进入doc.ready函数内部或外部?

2 个答案:

答案 0 :(得分:4)

在加载文档对象模型后,您应该在其中放置需要初始化的任何内容。包括事件监听器。

"我的事件听众(例如$('按钮')。click(function(){})是否按照惯例进入doc.ready函数内部或外部?"

HTML是从上到下解释的,所以如果你的JS文件位于你的脑海中并且你没有将它放在.ready事件中,那么它将无法找到你的按钮,因为它们还没有被生成然而。

如果你把它放在.ready事件中,它基本上告诉js要等到生成完整的dom对象,这样才能找到并绑定btn。

另一方面,有些人坚信将js文件包含在页面的最底部。由于HTML是从上到下解释的,因此js文件将在" meat"之后加载。已经生成了dom,你不需要在.ready

中封装你的事件绑定

答案 1 :(得分:0)

您应该在其中包含所有jQuery代码。一般来说,这是我见过的大多数程序员所做的。此外,您应该在此代码段中包含您的事件侦听器。这样,如果您在HTML之前加载jQuery代码,您的代码仍然可以正常运行。