`
zengshaotao
  • 浏览: 791878 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

attachEvent

 
阅读更多
Mozilla中:

addEventListener的使用方式:

target.addEventListener(type, listener, useCapture);

target: 文档节点、document、window 或 XMLHttpRequest。
type: 字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。
listener :实现了 EventListener 接口或者是 JavaScript 中的函数。
useCapture :是否使用捕捉,一般用 false 。例如:document.getElementById("testText").addEventListener("keydown", function (event) { alert(event.keyCode); }, false);

IE中:

target.attachEvent(type, listener);
target: 文档节点、document、window 或 XMLHttpRequest。
type: 字符串,事件名称,含“on”,比如“onclick”、“onmouseover”、“onkeydown”等。
listener :实现了 EventListener 接口或者是 JavaScript 中的函数。 例如:document.getElementById("txt").attachEvent("onclick",function(event){alert(event.keyCode);});

W3C 及 IE 同时支持移除指定的事件, 用途是移除设定的事件, 格式分别如下:

W3C格式:

removeEventListener(event,function,capture/bubble);

Windows IE的格式如下:

detachEvent(event,function);


target.addEventListener(type, listener, useCapture);
target 文档节点、document、window 或 XMLHttpRequest。
type 字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。
listener 实现了 EventListener 接口或者是 JavaScript 中的函数。
useCapture 是否使用捕捉,看了后面的事件流一节后就明白了,一般用 false
事件触发时,会将一个 Event 对象传递给事件处理程序,比如:
document.getElementById("testText").addEventListener("keydown", function (event) { alert(event.keyCode); }, false);
适应的浏览器版本不同,同时在使用的过程中要注意
attachEvent方法 按钮onclick IE中使用
addEventListener方法 按钮click fox中使用
两者使用的原理:可对执行的优先级不一样,下面实例讲解如下:
attachEvent方法,为某一事件附加其它的处理事件。(不支持Mozilla系列)
addEventListener方法 用于 Mozilla系列
举例: document.getElementById("btn").onclick = method1;
document.getElementById("btn").onclick = method2;
document.getElementById("btn").onclick = method3;如果这样写,那么将会只有medhot3被执行
写成这样:
var btn1Obj = document.getElementById("btn1"); //object.attachEvent(event,function);
btn1Obj.attachEvent("onclick",method1);
btn1Obj.attachEvent("onclick",method2);
btn1Obj.attachEvent("onclick",method3);执行顺序为method3->method2->method1
如果是Mozilla系列,并不支持该方法,需要用到addEventListener var btn1Obj = document.getElementById("btn1");
//element.addEventListener(type,listener,useCapture);
btn1Obj.addEventListener("click",method1,false);
btn1Obj.addEventListener("click",method2,false);
btn1Obj.addEventListener("click",method3,false);执行顺序为method1->method2->method3
分享到:
评论

相关推荐

    IE11没有window.attachEvent方法处理方法

    ### IE11没有window.attachEvent方法处理方法 在Web开发过程中,我们经常需要处理各种浏览器兼容性问题。其中,Internet Explorer(简称IE)一直是开发者关注的重点之一,尤其是IE10及以下版本。随着技术的发展,IE...

    attachEvent和addEventListener 使用方法

    在JavaScript中,`attachEvent` 和 `addEventListener` 是两种用于为元素添加事件处理程序的方法,主要在Internet Explorer和非IE浏览器(遵循W3C标准)中使用。它们都是用来监听和响应用户或浏览器的特定行为,如...

    02-attachEvent.html

    02-attachEvent.html

    self.attachevent is not a function的解决方法

    `self.attachevent is not a function`错误主要源于尝试在非IE浏览器中使用IE特有的`attachEvent`方法来绑定事件监听器。 `attachEvent`是Internet Explorer(IE)浏览器特有的事件绑定方法,它允许你将事件处理...

    解决使用attachEvent函数时,this指向被绑定的元素的问题的方法

    ### 解决使用attachEvent函数时,this指向被绑定的元素的问题的方法 在Web开发中,尤其是在处理Internet Explorer(IE)浏览器兼容性问题时,我们经常会遇到`attachEvent`函数中的`this`指向问题。默认情况下,`...

    addEventListener和attachEvent二者绑定的执行函数中的this不相同

    在JavaScript中,`addEventListener`和`attachEvent`都是用于向元素添加事件监听器的方法,但它们之间存在一些关键差异,特别是在处理`this`关键字时。`addEventListener`是W3C标准的一部分,被大多数现代浏览器支持...

    javascript attachEvent和addEventListener使用方法

    首先,attachEvent 方法是早期 Internet Explorer 浏览器引入的事件监听方法,它的语法是:`object.attachEvent(event, function)`。这个方法接受两个参数,第一个参数是事件名称(如 "onclick"),第二个参数是要...

    javascript attachEvent绑定多个事件执行顺序问题

    jQuery内部在使用`addEventListener`或`attachEvent`之前,会先检查是否已经存在相同类型的处理函数(handlers),如果存在则不会重复绑定,而是会将新的处理函数合并到现有的handlers中。这样,无论是在IE还是其他...

    javascript中attachEvent用法实例分析

    本文实例讲述了javascript中attachEvent用法。分享给大家供大家参考。具体分析如下: 一般我们在JS中添加事件,是这样子的 obj.onclick=method 这种绑定事件的方式,兼容主流浏览器,但如果一个元素上添加多次同一事件...

    attachEvent的使用方法与传递参数[IE|firefox]|angluo-javascript-37392.pdf

    `attachEvent`是Internet Explorer浏览器特有的事件处理方法,用于将函数绑定到DOM元素的特定事件上,例如点击、鼠标移动等。与W3C标准的`addEventListener`不同,`attachEvent`并不支持事件捕获阶段,并且它的事件...

    浅谈addEventListener和attachEvent的区别

    在JavaScript中,处理DOM事件监听有两个主要的方法:`addEventListener` 和 `attachEvent`。这两个方法在功能上相似,但存在一些关键的区别,特别是在浏览器兼容性和事件处理方式上。 `addEventListener` 是W3C标准...

    JS在IE和FF下attachEvent,addEventListener学习笔记

    ### JavaScript中的事件处理:attachEvent与addEventListener #### 一、引言 JavaScript 是一种广泛使用的脚本语言,它被用于实现网页的动态效果和交互功能。随着 Web 技术的发展,浏览器之间的差异也逐渐显现出来...

    JavaScript通过attachEvent和detachEvent方法处理带参数的函数

    在探讨JavaScript中使用attachEvent和detachEvent方法处理带有参数的函数之前,我们先要了解这两个方法分别是什么以及它们的作用。attachEvent和detachEvent是早期IE浏览器特有的,用于为DOM元素添加或移除事件监听...

    attachEventRetrofill:attachEvent 改造! 为您的现代浏览器带来 IE8 兼容性

    attachEvent Retrofill 释放旧记忆并安装attachEvent改造! 随着 IE 的消失和 Edge 的出现,微软将删除所有并完全坚持 Web 标准。 这使得所有addEvent包装器功能完全过时。 不要让这种情况发生并立即安装attachEvent...

    dhtmlxGantt 介绍以及使用说明

    此外,还可以通过 `attachEvent` 方法来绑定事件处理函数: ```javascript gantt.attachEvent("onTaskDblClick", function (id, e) { return false; // 禁止双击事件 }); ``` ##### 2. 自定义样式和行为 - **列...

    JS模拟MSN

    例如,使用`addEventListener`或`attachEvent`(IE浏览器)来监听用户的点击事件,并定义相应的处理函数。 3. **AJAX通信**:为了实现即时通讯,JS需要与服务器进行异步数据交换。AJAX(Asynchronous JavaScript ...

    Javascript attachEvent传递参数的办法

    在探讨Javascript中使用attachEvent方法传递参数的问题时,首先需要理解attachEvent和addEventListener之间的区别,以及它们在IE浏览器中的实现差异。attachEvent是IE 8及以下版本独有的事件绑定方法,而...

Global site tag (gtag.js) - Google Analytics