最近发现了head.js图书馆和男孩,我对此感到满意,尽管我仍然对一件事感到有点困惑。
来自 headjs.com:
The “DOM ready” event such as $(document).ready() is already fired when the scripts arrive. If the loaded scripts depend on that event make sure your library can handle this. jQuery 1.4+ works.
考虑到这一点,如果 $(document).ready() 中的代码依赖于加载 head.js 的外部脚本,那么设置使用 jQuery 的页面的最佳方法是什么?
我们是否可以完全丢失 $(document).ready() 调用,并且仍然成功设置依赖于文档准备就绪的事件监听器之类的东西?例如:
head.js("script1.js", "script2.js", "script3.js", function() {
$('#button').click(function(event) {
alert("clicked");
});
});
或者我们想将 $(document).ready() 包装在函数中吗?
只是想知道确保一切在需要时准备就绪的最佳实践是什么。
最佳答案
无论哪种方式都可以。处理程序传递到 ready()如果 DOM 已经完全初始化,则立即调用。
为了获得小性能提升,您可能需要删除ready
处理程序并直接包含您的代码,除非您依赖像jQuery的这样的副作用>$
对象被传递给处理程序。
关于jquery - head.ready() 与 $(document).ready,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12221122/