1

文档清楚地说明它在jquery(callback)运行函数之前等待 DOM 完成加载。[参考:http://api.jquery.com/jQuery/#jQuery3]

jquery(selector, ...)另一方面,文档似乎不清楚 DOM 是否会在选择器运行时完成加载。

所以,这是真正的问题:请有人告诉我是否真的需要像我目前正在做的那样将所有选择器嵌套在 jquery(callback) 中?

jquery(function() { jquery(selector).dostuff(); })

(或$(function() { $(selector).dostuff(); })相同)

4

4 回答 4

4

jQuery(callback)重载是 的简写,jQuery(document).ready(callback)所以它会在文档被解析后运行回调函数中的代码。

jQuery(selector, ...)不是任何事件绑定的简写,它会在代码运行的那一刻返回选择器匹配的元素。


不使用回调的方法实际上无法等到文档被解析。如果该方法只是等待文档完成,那将永远不会发生。当 Javascript 代码运行时,浏览器不会继续解析文档。

于 2013-10-15T21:00:11.293 回答
3

不,jQuery(selector)不等待 DOM 完成加载。jQuery(callback)只是 的简写jQuery(document).ready(callback)ready事件代表正在加载的 DOM。

于 2013-10-15T20:59:47.800 回答
0

当您的代码运行时需要当前页面(在 DOM 中)可用时,您只需要包装您的代码。

于 2013-10-15T20:59:13.537 回答
0

它在 jQuery 文档中说回调函数等待 DOM 加载,当您选择一个元素时,您没有回调函数。

这有一个回调函数。

jQuery(function() {

});

这不

jQuery('#element');
于 2013-10-15T20:59:26.297 回答