javascript - 如何通过 JS 代码连接 JS 事件处理程序

标签 javascript html dom-events

我有一个像这样的 HTML 元素:

<span id="myspan" ondblclick="edit(this)">Text to be edited</span>

如何绑定(bind)相同类型的处理程序 -> edit(this)

通过 JavaScript 到 ondblclick 事件?我想要如下所示的内容:

function someMethod(){
   var span = document.getElementById("myspan");

   span.ondblclick = edit(span); // This line doesn't work...

}

最佳答案

它不起作用,因为您将该函数的结果分配给 dbclick 处理程序。试试这个;

span.ondblclick = function() {
    edit(span); 
};

或者你也可以这样做

span.ondblclick = edit;

但是您需要更改编辑功能

function edit(event) {
    var span = event.target;
    // do your stuff
}

这样您就可以定位被单击的元素。

关于javascript - 如何通过 JS 代码连接 JS 事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10331451/

相关文章:

javascript - 获取父组件事件的 vue 子组件目标

javascript - 从不同的对象内部调用对象中的方法?

html - 纯 CSS slider

Javascript 捕获未选择的单选按钮以及文本框和警报

渐变的Javascript函数

javascript - 如何在 Canvas 动画下在 Canvas 上播放视频?

如果存在数组元素,则将 true/false 分配给变量的 Javascript 简写方法

jquery - 使用 AJAX 获取隐藏的 div

javascript - 在客户端 JavaScript 中,是否可以捕获事件并在稍后阶段触发它?

javascript - 语义 UI 搜索 - 下拉选择不填充输入