【发布时间】:2012-03-09 17:55:07
【问题描述】:
我在几个插件说明中看到过,将 javascript/jQuery 源代码粘贴到 body 标记的末尾之前。我搜索了他们为什么这样说,这对我没有任何意义。
如果我将 src 文件放在脚本中的任何位置,我根本不会遇到任何问题。谁能给我一个好的答案?
【问题讨论】:
标签: javascript jquery
我在几个插件说明中看到过,将 javascript/jQuery 源代码粘贴到 body 标记的末尾之前。我搜索了他们为什么这样说,这对我没有任何意义。
如果我将 src 文件放在脚本中的任何位置,我根本不会遇到任何问题。谁能给我一个好的答案?
【问题讨论】:
标签: javascript jquery
如果 javascript 代码不引用 DOM 或 DOM 中的任何对象,那么它可以放在页面中的任何位置。
如果你把它放在</body>标签之前的body标签中的HTML之后,那么页面将在你的脚本加载之前被解析和显示,这将使你的页面显示得更快。因此,您看到的建议是最大限度地提高网页的初始显示性能。
如果 javascript 确实引用了 DOM 或 DOM 中的任何对象,那么它必须有特殊的代码来等待 DOM 在执行之前使用 jQuery 中的 $(document).ready(fn) 之类的东西来加载,或者必须在DOM,以便在加载 DOM 之前它不会执行。
当然,代码必须在其初始执行立即依赖的任何代码之后加载。因此,需要在 jQuery 库本身之后加载 jQuery 插件。
以下是一套通用指南:
<head> 部分。例如,如果您的代码正在检查 URL 和 cookie 并决定是否进行客户端重定向,您希望该代码立即执行,因此您可以将该代码放在 <head> 部分,以便它可以在之前执行DOM 加载或显示。另一个例子,如果你有一些内联 javascript 需要在页面加载期间某些函数可用(例如,一些内联 javascript 执行 document.write() 并调用一些实用函数),那么将这些实用函数放在 <head> 部分中它们在页面加载时可用。</body> 标记之前以优化页面显示时间并将代码定位在 DOM 的位置代码运行时已准备好进行操作。【讨论】: