每日一题_JavaScript.两种方式实现网页加载后onload绑定多个函数?
具体需求:
1. 为网页加载后触发的onload事件绑定多个执行函数
实现思路:
1. 可直接给onload绑定一个匿名函数,匿名函数内部调用多个函数
2. 可自定义个函数,首先保存之前window.onload的值,然后判断window.onload的类型是否为function,如果不是就让window.onload的值设置为自定义的函数,否则就先执行window.onload之前绑定的函数,然后在执行自定义的函数
具体代码:
<!DOCTYPE html> <html><head><meta charset="UTF-8"></head><body><script type="text/javascript">function func1(){alert(/(?:function)([^\(]+)/.exec(arguments.callee)[1])}function func2(){alert(/(?:function)([^\(]+)/.exec(arguments.callee)[1])}// 方法一, 给onload绑定一个匿名函数,在匿名函数内部调用多个函数window.onload = function(){func1()func2()}// 方法二, 定义一个函数来接受要绑定的方法,判断window.onload当前值来加载执行function addOnLoadEvent(func){var oldOnLoad = window.onloadif(typeof window.onload == 'function'){window.onload = function(){oldOnLoad()func()}}else{window.onload = func}}addOnLoadEvent(func1)addOnLoadEvent(func2)</script></body> </html>
总结说明:
1. 强烈推荐第二种更加灵活的方式来创建多函数绑定,其实此方法还可以支持大多数内置事件处理方法,但是一定要注意的是一定要将函数赋值给window.onload,千万不要直接调用,不然会出现意想不到的结果.
转载于:https://blog.51cto.com/xmdevops/1854704
每日一题_JavaScript.两种方式实现网页加载后onload绑定多个函数?相关推荐
- 两种在CAD中加载在线卫星影像的方法
概述 经常使用CAD的朋友应该会有这样的一个烦恼,就是当加载卫星图到CAD中进行绘图的时候,由于CAD本身的限制和电脑性能等原因,往往不能加载太大的地图图片到CAD内,这里给大家介绍两种在CAD内加载 ...
- 【JetPack】视图绑定 ( ViewBinding ) 各种应用 ( 视图绑定两种方式 | Activity 布局 | 对话框布局 | 自定义组件布局 | RecyclerView 列表布局 )
文章目录 I . 视图绑定 ( ViewBinding ) 界面的两种方式 II . Activity 界面中 应用 视图绑定 ( ViewBinding ) III . Dialog 对话框界面中 ...
- 动态连接库的两种方式
动态连接库的两种方式? 答案:调用一个DLL中的函数有两种方法: 1.载入时动态链接(load-time dynamic linking),模块非常明确调用某个导出函数,使得他们就像本地函数一样.这需 ...
- 探讨Netty获取并检查Websocket握手请求的两种方式
在使用Netty开发Websocket服务时,通常需要解析来自客户端请求的URL.Headers等等相关内容,并做相关检查或处理.本文将讨论两种实现方法. 方法一:基于HandshakeComplet ...
- linux中安shell怎么传入参数,【linux】linux 下 shell命令 执行结果赋值给变量【两种方式】...
方法1:[通用方法] 使用Tab键上面的反引号 例子如下: find命令 模糊查询在/apps/swapping目录下 查找 文件名中包含swapping并且以.jar结尾的文件 使用反引号 引住命令 ...
- android 打开网页的两种方式.
有时候我们要在自己的应用中打开一个网页. 这是本人用到 的两种方式. 1. 网页放置于自己的ACTIVITY 1.1 在资源文件中申明WIDGET <WebView ...
- VUE中页面跳转的常用方式及返回上一页实现的两种方式
一.我们知道,如果是一个页面的某些部分切换变化,那不是网页之间的切换,而是子组件的切换:对于页面切换,我们需要知道的是整个页面的内容和路径都发生了改变.在原生JS中我们知道页面切换可以使用locati ...
- 3种Javascript图片预加载的方法详解
3种Javascript图片预加载的方法详解 预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度. 这对图片画廊及图片占据很大比例 ...
- java两种绑定方式_Javascript绑定事件的两种方式的区别
命名函数 function check(){ //code } 匿名函数 window.onload = function(){ //先获取元素对象,再绑定事件,绑定的是匿名函数不可重用 var bt ...
- Eclipse安装SVN插件的两种方式
登录 | 注册 收藏成功 确定 收藏失败,请重新收藏 确定 查看所有私信查看所有通知 暂没有新通知 想要绕过微信小程序开发中的坑吗?不妨来听这个,今晚8点,1小时帮你搞定! 23小时以前 CSDN日报 ...
最新文章
- Spring MVC配置静态资源的正常访问
- abb外部轴零位校准_ABB机器人如何控制非同步联动外部轴
- 谈谈如何学习flutter之flutter成神之路
- RFC remote call during status filter logic
- JAVA的值传递问题
- 【转】ABP源码分析十三:缓存Cache实现
- 解决JAVA_HOME nor the JRE_HOME environment variable is defined
- Hive-RCFile文件存储格式
- Shell中各种括号的作用:()、(())、[]、[[]]、{}、>、>>、$()、${}
- 内网通怎么获得无限积分
- CefSharp 知道这些就完事了
- java判断日文_如何在Java字符串中检测日文文本?
- 最新鑫迪自助建站系统源码V1.1完整版
- Java游戏神秘岛,【寻找高玩】服务端整合问题
- python人脸识别项目_face++与python实现人脸识别签到(考勤)功能
- Aspose.Slides使用教程:使用 C# 在 PowerPoint 演示文稿中添加页眉和页脚
- 黑盒测试、白盒测试与灰盒测试方法
- matlab snapnow,任意倾斜椭圆方程的画法.pdf
- 嵌入式学习笔记(一)嵌入式操作系统测试
- linux内核内存问题检测调试
热门文章
- C#中启动外部应用程序
- Error creating object Microsoft Data Access Components 2.1 (or later) have been properly installed
- 两种模式的资源管理器代码之———— 删除文件夹
- Spring学习笔记(四)
- jenkins插件管理提示“update information obtained:不可用ago”
- [网络流24题] 最长k可重线段集问题 (费用流)
- 企业库2.0培训系列课程大纲[意见征询]
- Entity Resolution(实体解析)
- BotVS数字货币现货交易类库
- mongodb聚合内存不足解决方案