在 class JQUERY 中只允许单击一次

Allow just one click in class JQUERY

我有一个 link 将通过 ajax 一些内容加载。

我的问题是,我不想删除文本“加载评论”,我只是想在这个 class 中不允许更多的点击。

<a href="javascript:;" class="showcomments" id="'.$idf.'">Load comments</a>

Jquery

var Progressajax = false;
$(function() {
     $(".showcomments").click(function(){
    
               if(Progressajax) return;
                   Progressajax = true;
    
    var element = $(this);
    var id = element.attr("id");
       
    Progressajax = false;
           alert("ok");
           $(data).hide().prependTo('.varload'+id).fadeIn(1000);
         //$(element).remove();
        $(element).removeAttr("href");
        $(element).removeClass('showcomments');
    }); 
    });
        

我只想第一时间看到OK。我怎样才能删除这个 class?

$(element).removeClass('showcomments');

这不起作用...

http://jsfiddle.net/qsn1tuk1/

使用jQuery的one()函数

$(".showcomments").one("click", function() {

http://www.w3schools.com/jquery/event_one.asp

The one() method attaches one or more event handlers for the selected elements, and specifies a function to run when the event occurs.

When using the one() method, the event handler function is only run ONCE for each element.

绑定事件处理程序时,您绑定到 元素,而不是 class。从元素中删除 class 不会更改绑定到该元素的事件处理程序。

您可以使用 off() 删除事件处理程序:

$(this).off('click');

http://jsfiddle.net/om6ggvyu/