架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4934|回复: 0

[JavaScript] js-window.onload只能调用一次的问题!

[复制链接]
发表于 2019-2-26 11:53:55 | 显示全部楼层 |阅读模式
_addLoadEvent这个方法就是判断是否多次调用了onload,如果多次调用,就把多个调用的方法再Window.onload里面依次执行

其实很简单的,_addLoadEvent(func),传一个函数进去,然后判断window.onload有没“绑定”一个函数(就是typeof(window.onload) != ‘function’),如果不是,就直接执行传进来的func函数。如果已经“绑定”了,那么将老的函数跟新的函数全部定义到window.onload的内部,一次执行。即:window.onload = function(){ oldonload(); func();}

如果一个页面有多个window.onload定义,往往只执行最后一个定义。

那就来说说   window.onload、$(document).ready(function(){})、$(window).load(function(){})的区别吧!

首先比较下window.onload与$(document).ready(function(){})。



1.执行时间
    window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。
    $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕

2.编写个数

     window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个
     $(document).ready()可以同时编写多个,并且都可以得到执行

3.简化写法

     window.onload没有简化写法
     $(document).ready(function(){})可以简写成$(function(){});

$(window).load(function(){})和window.onload区别在于$(window).load(function(){})可以写多个





上一篇:TeamViewer(永久破解解压直接用)
下一篇:java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset.
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-20 10:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表