复用window.onload方法
Javascript中,ad是指当页面加载完成后,要触发的事件。比如页面加载完,要显示某个欢迎界面,这时就需要onload方法。
通常的用法如下: ad = my_onload_function;
这种方法有个问题就是,如果onload时需要调用多个方法时,这样写的话,后面调用的会覆盖前面的,最终只有最后面调用的方法会执行,前面的不会。
那要怎样才能复用onload方法,让其调用的方法都执行呢?
操作方法
(01)首先我们看下问题,如图,页面加载完后,从log输出的信息看只有 function2输出, 第一个方法的调用被覆盖,没有执行输出
(02)方法一: 这个问题,首先我们就是要用JQuery库了,引入Jquery库对dom的其他操作也方便。引入Jquery库文件,并把代码改成如图,
(03)$(document)y(function() {}); 他意思是当文档准备好(加载完),就执行里面的代码,相当于onload事件了。ready方法可以写多个,而不会相互覆盖,直接解决了上面的问题,复用了onload方法,看下运行结果,从log信息输出来看,正确按顺序执行了二个function了。
(04)如果你不想引入Jquery脚本库,也是有方法解决的。方法二, 如图,把onload方法给 all_onload_function,然后其他需要在 onload执行的方法,全部在all_onload_function里进行调用执行。这个方法的缺点是,当多人协作开发,其他人不知道你也定义了onload方法,他那边也定义一个onload方法就会发生原来覆盖的问题了。
(05)方法三,我们添加一个 addOnLoadEvent方法,这个方法首先判断onload事件是否已经有了对应的方法,没有的话,直接赋值给参数传进来的方法。如果原先已经有了,则重新定义onload方法,先调用原来的方法,再调用参数传进来的新方法。如图
(06)这个方法从理论上说,也是支持无限个onload方法的,运行结果如图,正确按顺序执行了三个方法。
(07)总结,方法二适合个人开发,并要时刻注意不能重复写 ad, 因为会被覆盖。方法一和方法三都可以有无限多个Onload的方法,不用担心被覆盖。如果你不需要引入额外的脚本库,就用方法三。如果你的代码里已经引入了Jquery库的,则可以使用方法一。脚本库省却了我们很多工作,我们不需要做太多重复的工作,只需要调用就行了。
-
Excel单元格如何限制输入?
在Excel处理当中,我们往往需要限制某一列的单元格的输入,希望能按预期的值来输入数据。我们可以通过Excel的数据验证来处理。下面一起看下。操作方法(01)打开Excel文档,如图,假设我们希望D列的每个单元格输入的内容是一个数字,而且是介于20到50的值。其他的值都不允许...
-
捷渡D620行车记录仪更换电池
三年前中奖的捷渡D620,一直放在柜子里,前两天拿出来用,日期、时间设置完后,停车熄火时间后重新发动车子,显示回原来出厂设置的时间(2012年1月1日)。经过查找资料,确认捷渡D620有内置电池,判断是电池失效。某宝买了电池,直接拆机更换。操作方法(01)用吹风筒热风模式拼命吹记...
-
路由器有信号没网络
随着科技的发展,电脑的网络连接也由线路连接变为更加方便的无线连接。路由器就是连接网络的设备,它适用于各种机型的电子设备。为人们的生活提供便利。操作方法(01)将网线连接到路由器WAN口,再把电脑连接到路由器的LAN口,把路由器的线断掉,设置路由器,再给路由器连接电...
-
百度云使用磁链接
百度云现在已经更名为百度网盘。百度网盘不仅存储功能强大,而且下载功能也很强大。今天小编就告诉大家如何用百度网盘网页版和百度网盘手机客户端下载磁力链接。百度网盘手机客户端下载磁力链接方法(01)首先打开我们的百度网盘手机客户端,点击进入右下角菜单栏的更...