首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在加载了所有脚本文件之后,jQuery中的$()jQuery()会触发吗?

在加载了所有脚本文件之后,jQuery中的$()jQuery()会触发吗?
EN

Stack Overflow用户
提问于 2014-01-16 09:54:12
回答 2查看 3.6K关注 0票数 1

我在不同的js文件中声明全局变量,然后在不同的文件中使用这些变量。在开始执行之前,我需要确保所有js都已加载。我还试图使用require.js迁移到模块化js。但现在我需要一个快速的解决方案。在$().ready()下运行js代码安全吗?我猜脚本标记将被同步加载,因此DOM在加载所有脚本之前都不会准备好。

或者$(window).load()是否保证所有脚本文件都已加载。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-16 10:10:19

如果您在内联中加载脚本,则在加载这些脚本之前,DOM将无法就绪,因此,在加载这些资源之前,$().ready()函数将不会触发。如果在脚本元素中使用async标记,则根据脚本文件的大小,可以在加载脚本资产之前将DOM归类为就绪。

但是,$().ready()现在被定义为jQuery不推荐的,所以使用$(function(){})代替。

票数 5
EN

Stack Overflow用户

发布于 2014-01-16 10:03:11

$(window).on('load', function () {})将保证加载所有资源,而不仅仅是脚本。

但是,为什么需要加载所有脚本呢?脚本同步执行(没有延迟、异步和延迟加载技术),如果其中一个脚本没有加载,浏览器引擎将等待它,加载之后它将继续执行。为了防止这种等待,浏览器引擎是客户端优化的主要目标之一.例如,您可以尝试将所有脚本添加到一个文件中。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21158449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档