如何在JQuery中为具有多个项目的选择器激活一次事件处理程序?

时间:2011-03-31 18:52:50

标签: jquery

我有以下JQUERY代码。

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

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

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

1 个答案:

答案 0 :(得分:4)

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

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

另外,我会确保它不会像Ender在你的评论中所建议的那样被多次绑定。