4

最近发现了head.js库,我对它很满意,尽管我仍然对一件事有点困惑。

来自 headjs.com:

当脚本到达时,诸如 $(document).ready() 之类的“DOM 就绪”事件已经被触发。如果加载的脚本依赖于该事件,请确保您的库可以处理此问题。jQuery 1.4+ 有效。

考虑到这一点,如果 $(document).ready() 中的代码依赖于使用 head.js 加载的外部脚本,那么设置使用 jQuery 的页面的最佳方法是什么?

我们是否可以一起丢失 $(document).ready() 调用并仍然成功地设置依赖于准备好的文档的事件侦听器之类的东西?前任:

head.js("script1.js", "script2.js", "script3.js", function() {
    $('#button').click(function(event) {
        alert("clicked");
    });
});

还是我们想在函数中包装 $(document).ready() ?

只是想知道最佳实践是什么,以确保一切都在需要的时候准备就绪。

4

1 回答 1

4

无论哪种方式都很好。如果 DOM 已经完全初始化,则立即调用传递给ready()的处理程序。

为了获得的性能提升,您可能希望删除ready处理程序并直接包含您的代码,除非您依赖于像 jQuery 的$对象被传递给处理程序这样的副作用。

于 2012-08-31T19:04:13.390 回答