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
随机推荐
- SqlServer 2005/2008数据库被标记为“可疑”的解决办法
- vue.js实现仿原生ios时间选择组件实例代码
- Flex3 界面布局教程
- 用 Net 命令使局域网文件批量同步更新
- python实现rest请求api示例
- python中map、any、all函数用法分析
- node+koa实现数据mock接口的方法
- php 用checkbox一次性删除多条记录的方法
- java中form以post、get方式提交数据中文乱码问题总结
- 浅谈Go语言的空标示符
- C#基础之匿名方法实例教程
- php源码加密 仿微盾PHP加密专家(PHPCodeLock)
- 在ASP.NET中使用JavaScript脚本的方法
- Ruby中使用设计模式中的简单工厂模式和工厂方法模式
- php采集时被封ip的解决方法
- jquery 简单的进度条实现代码
- C#身份证验证小例子
- Windows系统中C#调用WinRAR来压缩和解压缩文件的方法
- R语言 vs Python对比:数据分析哪家强?
- Java8中新特性Optional、接口中默认方法和静态方法详解