将委托仅限制为一次

时间:2014-07-09 11:11:56

标签: jquery javascript-events

我有html,如下所示

<div>
    <a class="SameClass">One</a>
    <a class="SameClass">Two</a>
    <a class="SameClass">Three</a>
    <a class="SameClass">Four</a>
</div>

我想使用委托来注册点击事件,最终我编写了一些代码,如下所示。

$("div").delegate($(".SameClass"), "click", function(){
    alert("Clicked");
});

我的实际要求是,如果点击任何锚点,那么只有一个锚点必须得到该事件。但是,如果对所有锚点进行了四次攻击,那么你可以点击该事件。我知道代理的工作方式,但是根据我的要求,我需要一些方法让这个事件只被激活一次。任何工作......

1 个答案:

答案 0 :(得分:0)

您可以这样做:

$("div").delegate($(".SameClass"), "click", function(){
if(!$(this).hasClass('clicked')){
  $(this).addClass('clicked')
  alert("Clicked");
}});