当前位置: 首页 > Web前端 > HTML

addLoadEvent()函数

时间:2023-04-02 12:36:49 HTML

如果我们想要一个函数在网页加载完成后立即执行。网页加载时会触发onload事件,所以我们可以使用onload事件来加载这个函数。Onload事件与窗口对象相关联。如:将myfunction函数绑定到这个事件上:window.onload=myfunction();我们可以对一个功能使用上述解决方案,那么两个、三个甚至更多呢?如何处理??如果我们有两个函数,firstFunction和secondFunction,是不是这样写:window.onload=firstFunction;window.onload=secondFunction;但是每个处理函数只能绑定一条指令。所以上面的方法是行不通的。因为secondFunction函数会替换firstFunction函数。有一种方法可以帮我们解决上面的问题:我们先创建一个匿名函数来容纳这两个函数,然后把那个匿名函数绑定到onload事件上,如下:[javascript]viewplaincopywindow.onload=function(){firstFunction();第二个函数();这确实是一种不错的简答方法。但其实还是有一个最优解的——无论你打算在页面加载后执行多少功能,使用这个功能都可以轻松实现。该函数名为addLoadEvent。这个函数只有一个参数:这个参数指定了你打算在页面加载后执行的函数的函数名。addLoadEvent()函数代码如下:functionaddLoadEvent(func){varoldonLoad=window.onload;if(typeofwindow.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();功能();}}}1.将已有的window.onload事件处理函数的值存入oldonload。2.如果这个处理函数没有绑定的函数,就把这个函数加进去。3.如果某些功能已经绑定到该处理功能,则将该功能追加到现有规范的末尾。通过addLoadEvent函数,只需要调用这个函数进行绑定即可。