假设我有以下脚本
<script type="text/javascript">
$(function($, d) {
var custom = {
settings: { news: $('div.news') },
init: function() { this.settings.news.html('new'); }
}
}(jQuery, $(document)))
</script>
您可以假设该对象具有更多功能,但我的问题是我应该在哪里放置它? 我知道两种方法:
将脚本放在<head>
标记中。这样我就必须确保只在document.ready之后调用该对象,因此设置jQuery对象($('div.news')
)不会为空。
在我看来,第二种方式在语义上不太正确,但我可以放弃document.ready功能:我可以在html之后“物理地”放置脚本。
您更喜欢什么样的解决方案?为什么?谢谢你提前!
答案 0 :(得分:3)
任何无助于呈现页面布局的脚本都应放在正文的底部,最好是作为对脚本文件(不是脚本本身)的引用。这允许CSS + HTML以可视方式呈现页面,然后将JavaScript(或jQuery,在您的情况下)应用于呈现的元素。
它不会提高页面perse的性能,但它确实加快了视觉呈现速度,似乎为最终用户提供了更快的体验。
答案 1 :(得分:0)
我在关闭body标签之前放置我的代码,然后运行init():
var custom: {
settings: { news: null },
init: function() {
this.settings.news = $('#news');
this.settings.news.html('new');
}
}
custom.init();
类似的东西。
已编辑以反映安东尼的评论。