jquery - 如何在 JQuery 中为具有多个项目的选择器使事件处理程序仅触发一次?

标签 jquery

我有以下 JQUERY 代码。

<script type="text/javascript">
    $(".voteup").click(function(){
        alert($(this).parents(".webresource").attr("id"));
    });
</script>

该页面有 4 个带有类名 voteup 的元素。但是当我点击其中之一时,警报会显示四次。我认为只有一次单击,因此事件处理函数只会执行一次。

我该如何确保事件处理函数只执行一次。

最佳答案

.one()绑定(bind)一个事件处理程序并在第一次执行时取消绑定(bind)它。

$('.upvote').one('click', function() {
   ...
});

另外,我会确保它不会像安德在评论中建议的那样被多次绑定(bind)。

关于jquery - 如何在 JQuery 中为具有多个项目的选择器使事件处理程序仅触发一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5504812/

相关文章:

html - 我的 Bootstrap 导航栏可以工作,但点击时导航栏不会自动折叠,我需要再次按汉堡选项才能将其关闭

jquery - 如何使用CSS缩放IE8中的背景图像

javascript - 为什么我的自定义 jQuery 函数不起作用?

JQuery getJSon 嵌套调用不起作用

javascript - PHP 中未收到 AJAX Post 值

javascript - 仅当通过该查询字符串访问时才保留 URL 上的查询字符串

javascript - jQuery 完成事件

php - 将 javascript 变量与 PHP 数组进行比较

javascript - 将 CSS 规则获取到 javascript 变量中

javascript - 计算 DIV 数量,使用 jQuery 添加包装器