1.eleObj.addEventListener(eventName,handle,useCapture); eleObj:DOM元素: eventName:事件名称.注意,这里的事件名称没有“ on ”,如鼠标单击事件 click ,鼠标双击事件 doubleclick ,鼠标移入事件 mouseover,鼠标移出事件 mouseout 等. handle:事件句柄函数,即用来处理事件的函数: useCapture:Boolean类型,是否使用捕获,一般用false: 2.eleObj.at…
在JavaScript中,有三种常用的绑定事件的方法: 在DOM元素中直接绑定: 在JavaScript代码中绑定: 绑定事件监听函数. 一. 在DOM元素中直接绑定 这里的DOM元素,可以理解为HTML标签.JavaScript支持在标签中直接绑定事件,语法为:     onXXX="JavaScript Code" 其中: onXXX 为事件名称.例如,鼠标单击事件 onclick ,鼠标双击事件 ondouble,鼠标移入事件 onmouseover,鼠标移出事件 onmouse…
转换学开发,代码100天——2018-05-06 今天学习JavaScript的绑定事件.因为浏览器的原因绑定事件需要考虑兼容性问题. attachEvent     IE浏览器 ,ie9以上事件执行顺序与绑定顺序相同:ie9以下事件执行顺序与绑定顺序相反 btn.attachEvent("onclick",function(){   alert("a"); }); detachEvent btn.detachEvernt("onclick",f…
本质:不同的库或者工具中总是封装了不同的事件绑定形式,但是究其根源,还是IE事件模型和W3C事件模型不同的处理方式 1)W3C事件模型:支持事件捕捉和冒泡 addEventListener('type',function(){},bool) removeEventListener ('type',function(){},bool) 2)IE事件模型:仅支持事件冒泡 attachEvent('type',function(){}); detachEvent('type',fucntion(){}…
命名函数 <input type="button" onclick="check()" id="btn"/> <script type="text/javascript"> function check(){ //code } </script> 匿名函数 <input type="button" id="btn"/> <script…
var data = { name: 'Ruchee', email: 'my@ruchee.com' }; data.handleEvent = function (e) { console.log(this); }; document.getElementById('test_button').addEventListener('click', data, false); 重点:1. 绑定事件时传递数据本身2. 传递的数据中需要定义有一个 handleEvent 方法来负责事件响应…
/** * @description 事件绑定,兼容各浏览器 * @param target 事件触发对象 * @param type 事件 * @param func 事件处理函数 */ function addEvent(target, type, func) { if (target.addEventListener) //非ie 和ie9 target.addEventListener(type, func, false); else if (target.attachEvent) //…
Mozilla中: addEventListener的使用方式: target.addEventListener(type, listener, useCapture); target: 文档节点.document.window 或 XMLHttpRequest. type: 字符串,事件名称,不含“on”,比如“click”.“mouseover”.“keydown”等. listener :实现了 EventListener 接口或者是 JavaScript 中的函数. useCapture…
addEventListener() 方法用于向指定元素添加事件句柄. addEventListener() 方法添加的事件句柄不会覆盖已存在的事件句柄. 你可以向一个元素添加多个事件句柄. 你可以向同个元素添加多个同类型的事件句柄,如:两个 "click" 事件. 你可以向任何 DOM 对象添加事件监听,不仅仅是 HTML 元素.如: window 对象. addEventListener() 方法可以更简单的控制事件(冒泡与捕获). 当你使用 addEventListener()…
事件绑定通常发生在 onload 或 DOMContentReady , 事件绑定占用 处理时间 占用内存, 而且不是每个事件都会被 点击执行. 由此 事件委托 可以优化事件绑定行为.. 事件逐层冒泡 直到被父级元素捕获. 事件代理  给外层元素绑定一个处理事件, 就可以处理子元素上出发所有事件. DOM 标准 事件三个阶段: 捕获 到达目标. 冒泡 IE 不支持捕获, 但冒泡够用了. event.currentTarget 事件处理程序当前正在处理事件的那个元素 event.target 事件…
最近收集了一些关于JavaScript绑定事件的方法,汇总了一下,不全面,但是,希望便于以后自己查看. JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScript代码中直接绑定 3 绑定事件监听函数 一.在DOM元素中直接绑定 也就是直接在html标签中通过 onXXX=“” 来绑定.举个例子: <input type="button" value="点我呦" onclick="alert("he…
JavaScript(1)---绑定事件.解除绑定事件 一.事件概述 1.事件的几个概念 · 事件 指的是文档或者浏览器窗口中发生的一些特定交互瞬间.我们可以通过侦听器(或者处理程序)来预定事件,以便触发事件的时候执行相应的代码. 事件处理程序 我们用户在页面中进行的点击动作(click).鼠标移动动作(mousemove)等,都可以称之为事件名称.响应某个事件的函数则称为事件处理程序,或者叫做事件侦听器. 事件类型 UI事件: load.unload.error.resize.scroll.s…
JavaScript的组成: ECMAScript(js的基本语法).DOM(文档对象模型).BOM(浏览器对象模型) DOM的作用: 1. 找到页面上的元素 2. 增添.删除.修改页面上的元素 3. 增添.删除.修改页面上的属性 4. 删除页面上的元素 5. 创建页面元素 DOM做的是就是增删改查 DOM级别 1. DOM0:js在浏览器中最初的获取页面元素的方式 2. DOM1:w3c为了统一标准,规定了节点类型,使不同的浏览器有相同的使用方法 3. DOM2,DOM3:各自在之前的标准基础…
总结绑定事件的区别: addEventListener(); attachEvent()   相同点: 都可以为元素绑定事件 不同点: 1.方法名不一样 2.参数个数不一样addEventListener三个参数,attachEvent两个参数 3.addEventListener 谷歌,火狐,IE11支持,IE8不支持 attachEvent 谷歌火狐不支持,IE11不支持,IE8支持 4.this不同, addEventListener 中的this是当前绑定事件的对象 attachEven…
js的事件绑定方法中,ie仅仅支持attachEvent,而FF和Chrome仅仅支持addEventListener,所以就必须为这两个方法做兼容处理,原理是先推断attachEvent仅仅否为真(存在),假设为真则用attachEvent()方法.否则的话就用addEventListener(). 另外,为了避免每次绑定事件时都要做推断.能够封装一个函数myAddEvent(obj,ev,fn){}. 代码例如以下: <!DOCTYPE html> <html> <hea…
下面绑定事件的代码,进行了兼容性处理,能够被所有浏览器支持: function addEvent(obj,type,handle){ try{ // Chrome.FireFox.Opera.Safari.IE9.0及其以上版本 obj.addEventListener(type,handle,false); }catch(e){ try{ // IE8.0及其以下版本 obj.attachEvent('on' + type,handle); }catch(e){ // 早期浏览器 obj['o…
曾经写过一篇随笔,attachEvent和addEventListener,跟本文内容有很多相似之处 本文链接:javascript之事件绑定 1.原始写法 <div onclick="alert('you clicked me just now);'">click me</div> 在刚开始学习前端的时候,我们不免这么将事件绑定写在html中,后来我们想将html和js脚本进行分离便这么写 <div id="test">clic…
yuanwen http://www.jb51.net/article/32511.htm 写 addEventListener 和 attachEvent 区别的博文不少,不过大部分都把重点放置于前者是Firefox chrome,后者只是存在于IE系列中     写 addEventListener 和 attachEvent 区别的博文不少,不过大部分都把重点放置于前者是Firefox chrome,后者只是存在于IE系列中. 最近在写一个事件代理的时候,遇到一个BUG,发现除此外,二者绑…
总结一下:jQuery 事件绑定 和 JavaScript 原生事件绑定 及 区别 jQuery 事件绑定 jQuery 中提供了四种事件监听绑定方式,分别是 bind.live.delegate.on, 对应的解除监听的函数分别是 unbind.die.undelegate.off. live.delegate 不多用,在Jquery1.7中已经移除,这里不多说 重点介绍 bind.on bind(event,[data],function) bind 是使用频率较高的一种,作用就是在选择到的…
对于事件的绑定的方法有多种多样,但是在解除绑定事件的时候,就要注意使用的是那种绑定事件的方法,因为不同的绑定方法所对应的解除事件是不同的. 1. 原始写法 1.1 绑定事件:对象.事件=事件处理函数 <!doctype html> <html> <head> <style type="text/css"> #div1{ width:200px; height:200px; background:pink; margin-bottom: 1…
JavaScript作为一门基于事件驱动的语言(特别是用在DOM操作的时候),我们常常需要为DOM绑定各种各样的事件.然而,由于低版本的IE的不给力,在绑定事件和移除事件监听上都与众不同,我们常常需要自己封装一个跨浏览器绑定(移除)事件的函数.跨浏览器添加(移除)DOM事件的一种非常经典的实现代码如下: //跨浏览器添加事件 function addHandler(target, eventType, handler) { if(target.addEventListener) { //DOM2…
要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数.所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称. 在JavaScript中,有三种常用的绑定事件的方法: 在DOM元素中直接绑定: 在JavaScript代码中绑定: 绑定事件监听函数. 一. 在DOM元素中直接绑定 这里的DOM元素,可以理解为HTML标签.JavaScript支持在标签中直接绑定事件,语法为:    onXXX="JavaScript Code" 其中:…
js事件绑定的几种方式 JavaScript中有三种常用的绑定事件方法: 1. 在DOM元素中直接绑定: 2. 在JavaScript代码中绑定: 3. 绑定事件佳妮婷函数. 一.在DOM元素中直接绑定 这里的DOM元素指HTML标签.JavaScript支持在标签中直接绑定事件,语法: onXXX = "JavaScript Code" 其中: 1).onXXX为事件名称.如:鼠标单击事件onclick,鼠标双击事件ondouble,鼠标移入事件onmouseover,鼠标移出事件o…
文档中有写. //addEventListener() 方法用于向指定元素添加事件句柄. //提示: 使用 removeEventListener() 方法来移除 addEventListener() 方法添加的事件句柄. //Internet Explorer 8 及更早IE版本不支持 addEventListener() 方法,,Opera 7.0 及 Opera 更早版本也不支持. 但是,对于这些不支持该函数的浏览器,你可以使用 attachEvent() 方法来添加事件句柄 (查看 "更…
在利用javascript为DOM Element添加事件处理程序时,如果要想下兼容IE6,7时,就不得不考虑addEventListener与attachEvent的异同. 1.首先说下addEventListener,现在IE9+,chrome,firefox等都支持. 所有的DOM节点包含addEventListener,并且接受3个参数: HTMLElement.addEventListener(type,function,bool); type:处理事件的名称,如 "click&quo…
一.设置HTML标签属性为事件处理程序(注意和下面的设置javascript对象属性为事件处理程序是不同的) 用于设置文档元素事件处理程序属性也能化成对应的HTML标签的属性.如果这样做,属性值应该是Javascript代码字符串.这段代码应该是事件处理程序函数的主体,而非完整的函数声明.当指定一串代码作为HTML事件处理程序属性的值时,浏览器会吧代码串转换为类似如下的函数中: function(event){ with(){ with(){ with(this){ /* 这里是代码字符串 */…
js元素绑定事件   想给一个元素绑定一个方法之后,在绑定一个方法而且不被覆盖 window.onload = function () { alert('a'); } window.onlaod=function(){ alert('b') } 我们发现它只弹出一个,有一个被覆盖了 下面就说一下js中的绑定事件 attachEvent(IE中用) var oBtn = document.getElementById('btn1'); oBtn.attachEvent('onclick', fun…
javascript对象事件绑定方法 今天在做对象事件绑定的过程中出现了一点异外情况,由于事件方法是由参数传过来的,需要将当前对象call过去,方便方法体里直接调用this 错误写法 obj.onclick=p.click.call(作用域对象); 发现事件方法在初始化的时候就触发了,而且绑定失败. 正确的写法 ojb.onclick=function(){ p.click.call(作用域对象); }; 其实这里和作用域无关,还是绑定方法不对.所以总结了下js的对象事件绑定方法 1.内联模型…
javaScript 那些方式中检测数据类型 typeof typeof isNaN // 结果是function 检测数组的几种方式 instanceof arr instanceof Array() es5中 toString.call() toString.call() 传统事件绑定和符合W3c标准绑定有什么区别 两者的区别 传统事件绑定 <div onclick="alert('ok')">传统事件绑定</div> <div id='dv'>…
JavaScript  Dom 绑定事件 // 先获取Dom对象,然后进行绑定 document.getElementById('xx').onclick document.getElementById('xx').onfocus // 谁调用这个函数,这个this就指向谁 this:当前出发事件的标签.全局对象 window 一.绑定方式 <input id='i1' type='button' onclick='ClickOn(this)'> function ClickOn(this){…