javascript - jquery将dblclick事件绑定(bind)到多个元素

标签 javascript jquery

我正在尝试将 dblclick 事件绑定(bind)到我正在迭代的 nodeList 中的 div。 这是代码:

var elems = document.getElementsByClassName("click");
currentLocation = elems[0].id;
for (var i=0; i<elems.length; i++){
    $(elems[i]).dblclick(function() {
            if((elems[i].id) != currentLocation){
                badAnswer = true;
                alert(badAnswer);
            }
        });

    }

currentLocation 是一个全局变量,设置为节点列表的第一个元素 id。 badAnswer 也是一个设置为 false 的全局 bool 值。如果双击的元素与当前位置全局以外的元素匹配,则 badAnswer 将设置为 true。

目前,我收到一个未定义的错误,我尝试通过在事件处理程序内部创建一个局部变量来解决该错误。这似乎也不起作用,并且双击时 badAnswer 始终为 true,因为 elementID 始终等于最后一个元素的 ID 值。

有更好的方法吗?

最佳答案

是的,有一个更好的方法:

var currentLocation = $(".click")[0].id;
$(".click").on("dblclick", function() {
    if (this.id != currentLocation) {
        badAnswer = true;
    }
});

关于javascript - jquery将dblclick事件绑定(bind)到多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25044452/

相关文章:

javascript - 使用 jQuery 运行 PHP 并使用变量

javascript - 维基百科 API 不返回任何数据

javascript - 第一次后 Ajax 加载屏幕未显示

jquery - 如何在 django 提交表单中使用 jquery post

javascript - jquery this.id 不工作

javascript - 无法接收 Google Hangout 按钮的回调

javascript - $ ("selector").find (":psuedo-class") 未返回所需元素

javascript - 我在哪里可以找到一个简单的基于 JavaScript 的 HTML 语法荧光笔?

javascript - 使用 JavaScript 进行回调

javascript - 哪个 jQuery 函数将访问此标记中的下一个表和下一个 Input[type=submit] 按钮?