簡體   English   中英

Javascript檢查事件是否已被觸發或單擊

[英]Javascript check to see if an event has already been fired or clicked

單擊人字形標簽時,我需要啟動一個功能。 但是,我只需要在第一次加載頁面時觸發該函數。 如何防止每次單擊該標簽時觸發它?

    $('#navi a').bind('click',function(e){
        var $this   = $(this);
        var prevButton  = current;
        $this.closest('ul').find('li').removeClass('selected');

        if ( $(this).attr('id') == 'tab2')
        {
            //fire function only once
        }

    });

如果您只需要部分事件處理程序運行一次:

$("div").on("click",function(){
    if (!$(this).data("fired")) {
        console.log("Running once");
        $(this).data("fired",true);
    }

    console.log("Things as usual");
});

演示版

改用.one綁定。 這會將它附加在第一次點擊時觸發並自行刪除。

采用:

var isalreadyclicked=false;
  $('#navi a').bind('click',function(e){
    var $this   = $(this);
    var prevButton  = current;
    $this.closest('ul').find('li').removeClass('selected');

    if ( $(this).attr('id') == 'tab2')
    {
    if(!isalreadyclicked){
        //fire function only once
    isalreadyclicked=true;
    }
    }

  });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM