addEventListener 如何在后台工作
How does addEventListener work under the hood?
var elem=document.getElementById('mydiv');
elem.addEventListener('click',function(){...});
执行上述代码后,elem
是 HTMLDivElement 接口的一个实例。我最大的问题是addEventListener((方法到底是做什么的。它在哪些 DOM 对象中注册侦听器以及如何注册(它更改了这些 DOM 对象的哪些属性(。换句话说,我想知道elem
如何被告知添加侦听器,它的哪些属性(所有属性都归结为其原型链(受到影响。例如,我知道 Event.prototype 具有至关重要的属性,例如 type
、 target
;但是我无法将它们与elem
"连接"......
我不想找到哪些事件侦听器附加到上面的 DOM 节点。我想知道内部程序。
谢谢
执行上述代码后,elem 是
HTMLDivElement
接口的实例。我最大的问题是addEventListener()
方法究竟有什么作用。它在哪些 DOM 对象中注册侦听器
在调用addEventListener
的 DOM 元素上。(当然,子元素上的事件可能会冒泡(。
以及它是如何做到这一点的(它改变了这些 DOM 对象的哪些属性(
它是如何做到这一点的是一个内部实现细节。它不会更改 DOM 对象的用户可见属性。
换句话说,我想知道 elem 是如何被告知添加侦听器的
不是。
它的哪些属性(所有属性都包括其原型链(受到影响
都不是。
例如,我知道 Event.prototype 具有诸如类型、目标等关键属性;但是我无法将它们与 elem "连接"起来......
这些是Event
的属性,与elem
无关。
相关文章:
- Chrome扩展程序在后台工作
- ngRoute 在 angularjs 中作为依赖项包含在后台时如何工作
- 无法通过“&”使nodejs在后台工作
- jQuery Mobile App 的后台工作线程
- Chrome 扩展程序:无法让消息传递在后台脚本和内容脚本之间正常工作
- addEventListener 如何在后台工作
- heroku上的后台工作网络是如何知道的's结束了
- 没有web工作程序的Javascript后台处理
- querySelector是如何在后台工作的
- Javascript-事件监听器如何在后台工作
- jQuery点击事件不工作时,全屏iframe在后台
- 改变后台javascript功能不工作
- 在node.js中使用工作/后台进程vs .异步调用
- Ajax表单重载页面,而不是在后台工作
- 为什么css后台jQuery代码不工作jQuery设置多个css值
- 如何使一个phonegap构建应用程序在后台工作
- 使用canvas创建桌面通知图像,只有一个图像可以从后台页面工作
- force.start (d3.js) 是否在后台工作
- selenium (Firefox后台),sendkeys工作,但不聚焦
- 在HTML5应用程序中下载后台数据到浏览器数据库- settimeout vs工作线程