3

据说 Javascript 代码应该全部放在 HTML 文件的末尾,以便首先显示页面内容,让用户看到一些东西(让用户满意地看到一些东西而不是再等待 12 秒,因为例子)。

但是为了更好地封装 HTML 并匹配 Javascript 代码,例如“图像轮播”,通常将 HTML 和 Javascript 放在一个文件中,因此在整个最终 HTML 文件中都有 Javascript 代码块与 HTML 代码混合在一起。

但是如果所有这些 Javascript 代码块都使用 jQuery$(document).ready(function() { ... })来执行任务,那么页面显示会不会也很快呢?我认为不如将 Javascript 实际放置在 HTML 文件末尾时那么快,但足够接近,因为它只是向就绪事件队列添加了一个函数。

4

1 回答 1

2

我觉得重点是把js放在页面底部(一般就在结束标签里面),这样在js下载</body>的时候就可以显示页面的内容了。

如果您的 jQuery 代码在单独的.ready()调用中分布在整个 HTML 中,那么无论如何,它在<body>完全加载之前不会运行。所以问题是你在 HTML 中有多少 javascript?

如果有很多,那么它将减慢每个脚本之后的任何内容的显示速度。如果它是相对少量的代码,那么它可能不会产生太大的影响。

如果尽快显示页面内容对您来说真的很重要,那么请将所有脚本放在内容之后

我个人不会为了关联而将 javascript 与 HTML 混合。如果您开始删除/附加碰巧包含脚本的内容,您可能会得到意想不到的结果。我宁愿使用适当命名的类和 ID,以及大量代码注释。

另请记住,这些.ready()调用在加载之前不会起作用jQuery,这意味着它需要位于页面顶部,或者至少在您第一次调用之前。

所以再次回到哪个对你更重要的问题。如果希望内容尽快可见,请将所有 js 放在底部。如果您想要混合 js 和 HTML 的方法,则在显示页面时会有一些延迟。

于 2010-07-20T22:40:12.250 回答