热门搜索: 小说 摆渡人 精彩

用 JavaScript 替换 jQuery Document Ready 函数

[复制链接]
发表于 2024-2-14 16:06:19 | 显示全部楼层 |阅读模式
138 0
实现了jQuery 文档 read( $(document).ready()) 方法,以便在 DOM 完全加载时执行代码。由于它在所有 DOM 元素都可用时执行给定的函数,因此您可以确定尝试访问或操作元素将会起作用。 Pause Next Unmute Current Time 0:40 / Duration 2:00 Fullscreen 在 jQuery 3.0 之前,匿名函数的典型用法如下所示或直接(即不在特定元素上) JavaScript 所有上述命名的变体在功能上都是等效的。当 DOM 完全加载时,指定的处理程序将被调用,无论它是在哪个元素上调用的。换句话说,在图像元素$("img")和文档元素上调用它并不表示在加载指定元素时会触发回调。相反,它会在整个 DOM 完全加载时被调用。 在 jQuery 3.0 中,除此之外的所有其他语法方法$(handler);均已弃用。

官方给出的理由是: 这是因为选择与方法的行为无关.ready(),这是低效的,并且可能导致对方法行为的错误假设。 就绪事件和加载事件之间的区别 ready当 DOM 完全加载并且元素访问安全时会触发该事件。load另一方面,该事件在 DOM 和所有资源加载后触发。 加载事件可 中国海外非洲人数数据 以按如下方式使用 这不仅等待 DOM 准备好进行交互,还等待图像完全加载(这可能需要一些时间,具体取决于图像大小)。 对于正常的 DOM 操作,您可能不需要该load事件,但如果您想在加载所有资源之前显示加载旋转器,或者如果您想使用以下命令进行一些计算,那么它可能是正确的选择图像尺寸。 你可能不需要 jQuery.ready() Learn to Code with JavaScript 该ready方法确保仅当所有 DOM 元素都可以安全操作时才执行代码。



但是,这是什么意思?当您在 HTML 文档的部分中执行 JavaScript 代码该函数采用一系列 Deferred 对象,每个对象代表一个 AJAX 请求,并创建一个新的 Deferred 对象,该对象在所有输入 Deferred 对象解析后进行解析。 如果我在文档准备好之前尝试使用 jQuery 操作元素会发生什么情况? 如果您在文档准备好之前尝试使用 jQuery 操作元素,则它可能无法按预期工作,因为该元素可能尚不存在。这就是为什么将 jQuery 代码包装在文档就绪函数中很重要。 我可以在外部 JavaScript 文件中使用文档就绪功能吗? 是的,您可以在外部 JavaScript 文件中使用文档就绪功能。只需确保在 HTML 文档中将外部文件包含在 jQuery 之后,以及依赖于 jQuery 的任何其他脚本之前。 SitePoint 有限公司。

回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子10

发新帖子

精彩资讯

阅读排行

优秀作品