【问题标题】:Putting jQuery/javascript source pages before end of body tag将 jQuery/javascript 源页面放在正文标记结束之前
【发布时间】:2012-03-09 17:55:07
【问题描述】:

我在几个插件说明中看到过,将 javascript/jQuery 源代码粘贴到 body 标记的末尾之前。我搜索了他们为什么这样说,这对我没有任何意义。

如果我将 src 文件放在脚本中的任何位置,我根本不会遇到任何问题。谁能给我一个好的答案?

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    如果 javascript 代码不引用 DOM 或 DOM 中的任何对象,那么它可以放在页面中的任何位置。

    如果你把它放在</body>标签之前的body标签中的HTML之后,那么页面将在你的脚本加载之前被解析和显示,这将使你的页面显示得更快。因此,您看到的建议是最大限度地提高网页的初始显示性能。

    如果 javascript 确实引用了 DOM 或 DOM 中的任何对象,那么它必须有特殊的代码来等待 DOM 在执行之前使用 jQuery 中的 $(document).ready(fn) 之类的东西来加载,或者必须在DOM,以便在加载 DOM 之前它不会执行。

    当然,代码必须在其初始执行立即依赖的任何代码之后加载。因此,需要在 jQuery 库本身之后加载 jQuery 插件。

    以下是一套通用指南:

    1. 在页面中尽可能晚地添加代码,以最大限度地提高页面的显示性能。
    2. 将代码放在其初始执行所依赖的任何其他库之后。
    3. 仅当代码需要在文档加载之前执行或使用时,才将代码放入<head> 部分。例如,如果您的代码正在检查 URL 和 cookie 并决定是否进行客户端重定向,您希望该代码立即执行,因此您可以将该代码放在 <head> 部分,以便它可以在之前执行DOM 加载或显示。另一个例子,如果你有一些内联 javascript 需要在页面加载期间某些函数可用(例如,一些内联 javascript 执行 document.write() 并调用一些实用函数),那么将这些实用函数放在 <head> 部分中它们在页面加载时可用。
    4. 如果没有理由在页面加载之前执行代码,或者如果代码需要访问 DOM 本身,则将代码放在 </body> 标记之前以优化页面显示时间并将代码定位在 DOM 的位置代码运行时已准备好进行操作。
    5. 尽可能将代码放入外部 JS 文件中,以最大限度地利用浏览缓存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多