如何将多个页面的原生JavaScript onload事件共享实现?

2026-04-02 23:460阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计713个文字,预计阅读时间需要3分钟。

如何将多个页面的原生JavaScript onload事件共享实现?

在工作时,我们给一个元素绑定了一个事件。如果DOM还未完全加载,执行了JS代码,那么事件绑定就不会成功。通常的解决方法是使用:window.onload=EventFunction;。如果存在多个事件,window.onload=EventFunction1; EventFunction2; 。

在工作时,我们给一个元素绑定了事件,如果dom还没加载完成,就执行了js代码,就不会绑定成功。常规解决方案就是用:

window.onload = EventFunction;

可是如果有两个 事件,

  • window.onload = EventFunction1;
  • window.onload = EventFunction2;

那2就会将1取代,这时你可能会想:每个事件处理板书只能绑定一条指令。有一种办法可以让我们避开这一难题:可以先创建一个匿名函数来容纳这两个函数,然后把那个匿名函数绑定到onload事件上,如下所示:

window.onload = function(){ firstFunction(); secondFunction(); }

它确实能很好地工作————在需要绑定的函数不是很多的场合,这应该是最简单的解决方案了。

这里还有一个弹性最佳的解决方案——不管你打算页面加载完毕时执行多少个函数,它都可以应付自如。这个方案需要额外编写一些代码,把函数绑定到window.onload事件就非常易行了。

这个函数的名字是addLoadEvent,它是由Simon Willison写的。它只有一个参数:打算在页面加载完毕时执行的函数的名字。

阅读全文

本文共计713个文字,预计阅读时间需要3分钟。

如何将多个页面的原生JavaScript onload事件共享实现?

在工作时,我们给一个元素绑定了一个事件。如果DOM还未完全加载,执行了JS代码,那么事件绑定就不会成功。通常的解决方法是使用:window.onload=EventFunction;。如果存在多个事件,window.onload=EventFunction1; EventFunction2; 。

在工作时,我们给一个元素绑定了事件,如果dom还没加载完成,就执行了js代码,就不会绑定成功。常规解决方案就是用:

window.onload = EventFunction;

可是如果有两个 事件,

  • window.onload = EventFunction1;
  • window.onload = EventFunction2;

那2就会将1取代,这时你可能会想:每个事件处理板书只能绑定一条指令。有一种办法可以让我们避开这一难题:可以先创建一个匿名函数来容纳这两个函数,然后把那个匿名函数绑定到onload事件上,如下所示:

window.onload = function(){ firstFunction(); secondFunction(); }

它确实能很好地工作————在需要绑定的函数不是很多的场合,这应该是最简单的解决方案了。

这里还有一个弹性最佳的解决方案——不管你打算页面加载完毕时执行多少个函数,它都可以应付自如。这个方案需要额外编写一些代码,把函数绑定到window.onload事件就非常易行了。

这个函数的名字是addLoadEvent,它是由Simon Willison写的。它只有一个参数:打算在页面加载完毕时执行的函数的名字。

阅读全文