javascript - JQuery 不是动态添加的类上的选择器

标签 javascript jquery

我想在“赞”按钮上添加点击事件。单击时我想添加一个名为 active 的类。当元素具有此类时,我不希望触发单击事件。

为什么这个日志会“被点击!”每次而且不仅仅是第一次?

http://jsfiddle.net/M5MRQ/

<div class="vote">
    <a class="vUp">Like me</a>
</div>

$(".rate .vUp").not(".active").click(function(){
    console.log("click!");
    $(this).addClass("active");
    return false;
});

最佳答案

那是因为,你的 DOM 在运行时改变,但你的 JS 却没有。您需要一个实时方法,或者更好的是,删除按钮上的单击处理程序,如下所示:

$(".rate .vUp").click(function(event){
    console.log("click!");
    $(this).addClass("active");
    $(event.currentTarget).unbind("click");
    event.preventDefault();
    return false;
});

看这里http://jsfiddle.net/M5MRQ/7/

关于javascript - JQuery 不是动态添加的类上的选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21158572/

相关文章:

javascript - vb.net web方法接受json

javascript - Vue.js2项目中如何使用datatables.js?

javascript - hplot R 饼图的深入分析

javascript - 动态添加嵌入时 Instagram 嵌入不起作用

javascript location.href onchange 事件监听器?

javascript - Jquery:推送 FormData?

javascript - 无法加载模块脚本 : The server responded with a non-JavaScript MIME type of "text/plain". 严格的 MIME 类型检查 i

jquery - 使用 jQuery UI 实现彩色动画

jquery - 用于在线/离线移动同步的库

javascript - 删除标签前的 jQuery 检查