javascript - $(document).ready() 和在正文末尾包含脚本有什么区别?

标签 javascript jquery html

在 jQuery 的 $(document).ready() 上执行 JavaScript 函数与将它包含在 HTML 正文末尾的脚本标记中有什么区别?

谢谢,

DLiKS

最佳答案

<script> 中的 JavaScript 代码立即评估(执行)标签。请注意,在这种情况下,页面尚未(完全)解析,DOM 尚未准备就绪。

jQuery 中的 JavaScript 代码 ready()回调在 DOMContentLoaded 事件上进行评估,该事件发生在整个 HTML 源代码已被浏览器解析之后。
关于此事件: https://developer.mozilla.org/en/Gecko-Specific_DOM_Events

请注意,定义就绪处理程序的现代方法是这样的:

$(function() {
    // code
});

另外,查看这个 SO 问题,它指出了当您不使用就绪回调时会发生什么:How many JavaScript programs are executed for a single web-page in the browser?

关于javascript - $(document).ready() 和在正文末尾包含脚本有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4820523/

相关文章:

javascript - 从 $_GET 传递到 $_SESSION 时出现奇怪的错误

javascript - 使用 JavaScript 和 Bootstrap 显示和隐藏 1 行元素

javascript - div 元素不改变其文本内容

html - 使用 powershell 检索 HTML 中的文本

javascript - 使用 jquery 将 id 分配给现有 div

javascript - 关于自动版本化静态内容的问题

javascript - jQuery 淡入 OnLoad?

jquery.submit 函数与 Angular

html - 我想隐藏我当前的图像并用移动 View 中的文本替换它

javascript - 用于匹配除第一次出现以外的字符的正则表达式