javascript add event remove event
网上搜来的,看样子不错,记一笔。//------------------------------------
// heavily based on the Quirksmode addEvent contest winner, John Resig
// addEvent
function addEvent(obj,type,fn){
if(obj.addEventListener) obj.addEventListener(type,fn,false);
else if(obj.attachEvent){
obj["e"+type+fn]=fn;
obj[type+fn]=function(){obj["e"+type+fn](window.event);}
obj.attachEvent("on"+type,obj[type+fn]);
}
}
//------------------------------------
// removeEvent
function removeEvent(obj,type,fn){
if(obj.removeEventListener) obj.removeEventListener(type,fn,false);
else if(obj.detachEvent){
obj.detachEvent("on"+type,obj[type+fn]);
obj[type+fn]=null;
obj["e"+type+fn]=null;
}
}
相关推荐
-
javascript add event remove event
网上搜来的,看样子不错,记一笔.//------------------------------------ // heavily based on the Quirksmode addEvent contest winner, John Resig // addEvent function addEvent(obj,type,fn){ if(obj.addEventListener) obj.addEventListener(type,fn,false); else if(ob
-
Javascript运行机制之Event Loop
目录 一.四个概念 1.Javascript是单线程 2.任务队列 3.同步任务.异步任务 4.Javascript执行栈 二.Event Loop 三.实战 一.四个概念 1.Javascript是单线程 单线程意味着我们的js代码只能从上往下同步执行,同一时间只能执行一个任务,这会导致某些执行时间较长或者执行时间不确定的任务会卡住其它任务的正常执行,Event Loop出现的原因正是为了解决此问题. 2.任务队列 为了解决上述的排队问题,有了任务队列,浏览器在异步任务有了结果后,将其添加到任
-
JavaScript实现事件总线(Event Bus)的方法详解
目录 介绍 原理 分析 进阶 1. 如何在发送消息时传递参数 2. 订阅后如何取消订阅 3. 如何只订阅一次 4. 如何清除某个事件或者所有事件 5. TypeScript 版本 6. 单例模式 总结 介绍 Event Bus 事件总线,通常作为多个模块间的通信机制,相当于一个事件管理中心,一个模块发送消息,其它模块接受消息,就达到了通信的作用. 比如,Vue 组件间的数据传递可以使用一个 Event Bus 来通信,也可以用作微内核插件系统中的插件和核心通信. 原理 Event Bus 本质上
-
event.x,event.clientX,event.offsetX区别
x:设置或者是得到鼠标相对于目标事件的父元素的外边界在x坐标上的位置. clientX:相对于客户区域的x坐标位置,不包括滚动条,就是正文区域. offsetx:设置或者是得到鼠标相对于目标事件的父元素的内边界在x坐标上的位置. screenX:相对于用户屏幕.测试代码一:[code] <html> <head> </head> <script> function reload(){ window.location.reload("http://w
-
面试题:java中为什么foreach中不允许对元素进行add和remove
目录 1.foreach遍历ArrayList过程中使用 add 和 remove 2.追根溯源 2.1.modCount是什么? 2.2.expectedModCount 是什么? 2.3.熟悉的checkForComodification方法 2.4.流程回顾 3.避免fail-fast 机制 3.1.使用listIterator或iterator 3.2.使用CopyOnWriteArrayList 3.2.1.CopyOnWriteArrayList的add方法 3.2.2.CopyOn
-
JavaScript让IE浏览器event对象符合W3C DOM标准
复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu
-
Javascript中的window.event.keyCode使用介绍
主要就是为了监听键盘按下的是哪个键,并且转成ASCII码; 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m
-
JavaScript加强之自定义event事件
复制代码 代码如下: $().ready(function(){ for(var i=0;i<5;i++){ /** * 这种写法不专业,如果处于循环里,就会注册5次事件,点击后alert5次 */ // $("#aa").click(function(){ // alert("hahahaha"); // }); /** * 这种写法才是专业的,在注册一次点击事件前,先解绑点击事件,然后再绑定一个点击事件,所以到最后只绑定了一次点击事件 */ $("
-
iis6+javascript Add an Extension File
Description Adds the BITS_Update.dll extension file. 复制代码 代码如下: strComputer = "." Set objWMIService = GetObject _ ("winmgmts:{authenticationLevel=pktPrivacy}\\" _ & strComputer & "\root\microsoftiisv2") Se
-
浅析jQuery 3.0中的Data
jQuery 3.0 在6月9日正式发布了,3.0 也被称为下一代的 jQuery.这个版本从14年10月开始,其中发布过一次beta 版(2016/1/14,)和候选版(2016/05/20).一路走来,颇为不易. 一.Data浅析 jQuery 3.0 中的 Data 是内部使用的,定义为一个"类".一共用它创建了两个对象,dataPriv 和 dataUser.Data 有 1 个对象属性(expando)和类属性(uid),有 6 个方法,如下 下面分别解读 1.Data.ui
随机推荐
- SQL Server 2012使用Offset/Fetch Next实现分页数据查询
- Android 串口通信编程及串口协议分析
- java面试题之try中含return语句时代码的执行顺序详解
- iOS中UIAlertView警告框组件的使用教程
- JavaScript 正则表达式中global模式的特性
- ASP.NET下使用xml反序列化、缓存依赖实现个性化配置文件的实时生效
- asp文件如何打开
- php自动识别文件编码并转换为UTF-8的方法
- node.js入门教程之querystring模块的使用方法
- Jquery AJAX POST与GET之间的区别详细介绍
- JavaScript中Hoisting详解 (变量提升与函数声明提升)
- 仿51JOB的地区选择效果(可选择多个地区)
- 微信小程序 PHP生成带参数二维码
- tomcat在opensuse下开机自启失败的原因分析及解决方法
- Java调用python的方法(jython)
- Android画图之抗锯齿paint和Canvas两种方式实例
- Android实现简单的拨号器功能
- 浅谈Java 并发的底层实现
- 详解如何模拟实现node中的Events模块(通俗易懂版)
- 使用Kotlin+RocketMQ实现延时消息的示例代码