网站建设工作稳定吗,营销型网站建设题库,jsp购物网站开发 论文,纯静态网站一、传统事件绑定方法我们在学习的时候#xff0c;最初接触的事件绑定方式大多是传统事件绑定方法。传统事件绑定方法事例如下#xff1a; window.οnlοadfunction(){alert(页面已加载);
}
document.getElementById(btn).οnclickfunction(){alert(…一、传统事件绑定方法我们在学习的时候最初接触的事件绑定方式大多是传统事件绑定方法。传统事件绑定方法事例如下 window.οnlοadfunction(){alert(页面已加载);
}
document.getElementById(btn).οnclickfunction(){alert(按钮被点击);
}
document.οnmοusemοvefunction(){console.log(鼠标在移动);
}传统事件绑定方法的特点如下 事件名称之间一定要加上on比如onclick、onload、onmousemove。 兼容主流的浏览器包括低版本的IE。 当同一个元素绑定多个事件时只有最后一个事件会被添加并且传播模式只能是冒泡模式。 二、addEventListener()方法事例 window.addEventListener(load,init,false);function init(){alert(页面加载成功);
}
// 下面写法与上面等价
window.addEventListener(load,function(){alert(页面加载成功);
},false);addEventListener()方法特点 element.addEventListener(event, function, useCapture)中的第三个参数可以控制指定事件是否在捕获或冒泡阶段执行。true - 事件句柄在捕获阶段执行。false- 默认- 事件句柄在冒泡阶段执行。 addEventListener() 可以给同一个元素绑定多个事件不会发生覆盖的情况。如果给同一个元素绑定多个事件那么采用先绑定先执行的规则。 addEventListener() 在绑定事件的时候事件名称之前不需带 on 。 注意该方法的兼容性如果要兼容 IE6-8 不能使用该方法可以采用以下方法。 可以使用 removeEventListener() 来移除之前绑定过的事件。 // 向 div 元素添加事件句柄document.getElementById(myDIV).addEventListener(mousemove, myFunction); // 移除 div 元素的事件句柄document.getElementById(myDIV).removeEventListener(mousemove, myFunction); 三、attachEvent()方法事例window.attachEvent(onload,function(){ alert(页面加载成功);});attachEvent()方法特点 attachEvent是 IE 有的方法它不遵循W3C标准而其他的主流浏览器如FF等遵循W3C标准的浏览器都使用addEventListener所以实际开发中需分开处理。 attachEvent()是 后绑定先执行。 绑定时间时attachEvent必须带 on如 onclickonmouseover 等 在我们实际的项目里面在使用原生js绑定事件的时候大多数情况下会使用 addEventListener() 因为目前来说很少有人使用低版本IE了大多数项目不会要求兼容 IE6-8 。如果项目要求兼容 IE6-8 这个时候可以考虑 attachEvent()但是不建议这样使用这样的话需要些兼容代码不仅繁琐而且容易出错这个时候就建议使用jQuery库直接进行事件绑定jQuery已经帮我们做好了兼容处理的工作直接饮用提高效率。--------------------- 原文来自https://blog.csdn.net/fengzhen8023/article/details/81453753 转载于:https://www.cnblogs.com/zz-com/p/9959259.html