Javascript jQuery onLoad x jQuery onDomready

Javascript jQuery onLoad x jQuery onDomready,javascript,jquery,Javascript,Jquery,每次使用jQuery时,我都会看到两个通过jQuery初始化内容的选项:onLoad或onDomReady 我用我编写的大多数脚本进行了测试,没有功能上的差异。在Google上搜索我发现其中一个主要区别是,通过onLoad,脚本只会在加载所有元素后才开始运行,包括CSS外部文件、JS外部文件、图像等,如果需要按一定顺序加载JS文件,这会很有用,但在任何给定的时刻,这些文件中的一个引用了另一个尚未加载的文件,而一旦加载HTML页面内容,就可以通过onDomReady开始加载脚本,而不必加载其他文件

每次使用jQuery时,我都会看到两个通过jQuery初始化内容的选项:onLoad或onDomReady

我用我编写的大多数脚本进行了测试,没有功能上的差异。在Google上搜索我发现其中一个主要区别是,通过onLoad,脚本只会在加载所有元素后才开始运行,包括CSS外部文件、JS外部文件、图像等,如果需要按一定顺序加载JS文件,这会很有用,但在任何给定的时刻,这些文件中的一个引用了另一个尚未加载的文件,而一旦加载HTML页面内容,就可以通过onDomReady开始加载脚本,而不必加载其他文件


这个区别是对的?是否还有其他差异需要研究和感知?

以评论作为答案:


一个主要区别是,jquery就绪的“pseudo”事件将在处理程序中激发 在DOM有效“就绪”后设置,jquery在内部使用 答应我。如果在之后设置了处理程序,则不会激发窗口onload事件 窗口已加载。e、 g:


然后应该注意,没有与jQuery document ready事件等效的内部版本。例如,
DOMContentLoaded
如果在DOM准备就绪后解决,则不会触发生成事件。

@Pilot我认为您不理解我的问题。我不是在寻求代码方面的帮助,我是在寻求帮助以了解这两种方法之间的差异。我写下了我对差异的理解程度,并要求提供更多信息。我想了解每一个概念。我必须为此编写一个提琴吗?一个主要的区别是,jquery就绪处理程序将被激发,即使在DOM有效地“就绪”后设置了处理程序,jquery在内部使用一个承诺。若在加载窗口后设置了处理程序,则不会触发窗口onload事件。e、 g:我看到你的小提琴,意识到onDomready可以执行多次,而onLoad只能执行一次,对吗?你可以绑定多个onLoad处理程序,但如果在加载窗口后绑定,这些处理程序就不会被激发。所以绑定多个onLoad处理程序是没有用的,对吗?你能进一步解释一下“jquery内部使用承诺”的含义吗?这跟什么有关系吗?是的,就是这样。但是,如果您不知道它背后的承诺和异步行为的概念,可能有点难以解释(至少从我这样的人那里)。您可以检查jQuery源代码并搜索
readyList
,它是使用的延迟对象,然后公开promise接口。延迟对象和承诺之间的区别在于不能手动解析承诺。但正如我所说,要解释这一切可能需要很长时间