针对jQuery等同于JavaScript的addEventListener方法这个问题,本篇文章进行了详细的解答,同时本文还将给你拓展addEventListener的用法示例介绍_javascri
针对jQuery等同于JavaScript的addEventListener方法这个问题,本篇文章进行了详细的解答,同时本文还将给你拓展addEventListener 的用法示例介绍_javascript技巧、document.addEventListener使用介绍_javascript技巧、DOMContentLoaded 上的 window.addEventListener 无法正常工作 - JavaScript、Javascript .addEventListener 不起作用等相关知识,希望可以帮助到你。
本文目录一览:- jQuery等同于JavaScript的addEventListener方法
- addEventListener 的用法示例介绍_javascript技巧
- document.addEventListener使用介绍_javascript技巧
- DOMContentLoaded 上的 window.addEventListener 无法正常工作 - JavaScript
- Javascript .addEventListener 不起作用
jQuery等同于JavaScript的addEventListener方法
我试图找到与此JavaScript方法调用等效的jQuery:
document.addEventListener(''click'', select_element, true);
我已经达到:
$(document).click(select_element);
但这并不能达到与JavaScript方法的最后一个参数相同的结果-一个布尔值,指示是否应在捕获或冒泡阶段执行事件处理程序根据我对理解被排除在外。
如何使用jQuery指定该参数或以其他方式实现相同的功能?
答案1
小编典典并非所有浏览器都支持事件捕获(例如,InternetExplorer版本低于9)不支持事件捕获,但是所有浏览器都支持事件冒泡,这就是为什么它是将处理程序绑定到所有跨浏览器抽象(包括jQuery)中的事件的阶段。
与您在jQuery中寻找的内容最接近的是使用bind()
(on()
在jQuery1.7+中已被jQuery取代)或特定于事件的jQuery方法(在这种情况下,无论如何都在内部click()
调用bind()
)。全部使用引发事件的冒泡阶段。
addEventListener 的用法示例介绍_javascript技巧
(要注意的是div必须放到js前面才行)
一般情况下,如果给一个dom对象绑定同一个事件,只有最后一个会生效,比如:
document.getElementById("btn").onclick = method1;
document.getElementById("btn").onclick = method2;
document.getElementById("btn").onclick = method3;
那么将只有method3生效。
如果是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);