相关疑难解决方法(0)

Javascript事件处理程序存储在哪里?

我想弄清楚的DOM如何跟踪事件处理程序,无论是通过使用jQuery的addEventListener约束,或通过HTML属性(如的onload ="myFunc的()").

我已经读过jQuery使用.data()方式来存储jQuery绑定的事件处理程序......但是其他的呢?他们去哪里?我知道Webkit的检查器工具通过检查Elements选项卡中的元素来显示事件监听器,但它在哪里获取该信息?

此外,在使用Chrome的Web检查一些测试,我用控制台通过拉动在用较新的替换上现场直播一个版本的jQuery的<script>标签,从而重写jQuery$变量.显然,在替换之前使用jQuery绑定的事件丢失了,因为在该过程中引入了新的.data()接口.

然而,那些"丢失"的处理程序仍然受某些事件的约束,因为它们实际上最终在事件触发时被调用.假设我想完全删除它们,或者用我自己的处理程序取代它们?这就是为什么我想知道如何在DOM保存它们的地方访问实际的处理程序......并且没有jQuery.

javascript events

7
推荐指数
1
解决办法
1815
查看次数

用addEventListener存储的事件在哪里存储?

我从一个空页开始.如果我跑,document.body.onclick我得到null.如果我应用以下代码:

document.body.onclick = function() { return "Click"; };
Run Code Online (Sandbox Code Playgroud)

我得到的function() { return "Click"; },当我运行document.body.onclick.那讲得通!但是当我跑步的时候

document.body.addEventListener("click", function() { return "Click"; });
Run Code Online (Sandbox Code Playgroud)

document.body.onclick仍然null,但输出是"Click"我跑的时候document.body.click().

所以我的问题是,使用时存储的功能在addEventListener哪里?

javascript

7
推荐指数
1
解决办法
1157
查看次数

“e.preventDefault()”中的“e”是什么?

我无法理解为防止 JavaScript 中的默认操作而传递的参数“e”:

document.getElementById('submit').addEventListener('click', calculate, false);
function calculate(e){
  e.preventDefault():
}
Run Code Online (Sandbox Code Playgroud)

javascript events

5
推荐指数
1
解决办法
2078
查看次数

onChange(e)中的"e"是什么?

我已经使用它已经有一段时间但我仍然不知道 - e将它传递给onChange或者你可以访问的对象是什么onSubmit

javascript

-2
推荐指数
1
解决办法
86
查看次数

标签 统计

javascript ×4

events ×2