在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ js中怎么讓綁定的click事件只觸發(fā)一次呢?

js中怎么讓綁定的click事件只觸發(fā)一次呢?

項目需求 讓js綁定的事件 只觸發(fā)1次~

回答
編輯回答
悶油瓶

var kaiguan=1;
onclick=function(){
if(kaiguan){

  alert('執(zhí)行第一次操作');
  kaiguan = 0;

}
}

2018年8月29日 01:59
編輯回答
做不到

可以封裝一下多處使用

function one(fn) {
    var flag = true;
    return function () {
        if (flag) {
            flag = false;
            fn.apply(this, arguments)
        }
    }
}

document.getElementById("btn").onclick = one(function(e) {
    console.log(e)
    console.log(this);
})
2018年6月17日 16:32
編輯回答
誮惜顏

如果只是簡單的點擊一次后面就不執(zhí)行click事件的話,可以設置個flag或者點擊以后移除事件。如果你的需求是點擊以后再次進入頁面也不能點擊執(zhí)行了,這里最好就通過發(fā)請求,通過后端返回的數(shù)據(jù)來判斷是否可以點擊來進行控制。

2018年3月27日 16:17
編輯回答
巫婆

用 jQuery 的話,可以用 .one()文檔在此

2017年8月25日 23:37
編輯回答
嫑吢丕
    var btn = document.getElementById('btn');
    // 添加事件綁定
    btn.addEventListener('click', btnClick, false);

    // 按鈕點擊方法
    function btnClick() {
      console.log('hello');
      // 刪除事件綁定
      btn.removeEventListener('click', btnClick, false);
    }

個人建議點擊以后刪除綁定的事件才是最靠譜的

2017年12月29日 14:20
編輯回答
清夢
<button id="btn">按鈕</button>
<script>
    function test () {
        if(this.clickTimes<1) {
            alert('點擊第:【 ' + this.clickTimes + ' 】次');
            
            this.clickTimes++;
        }else {
            alert('已經(jīng)點過一次了,不做任何操作');
        }
    }
    
    var oBtn = document.getElementById('btn');
    
    // 記錄此按鈕點擊次數(shù)
    oBtn.clickTimes = 0;
    
    // 為此按鈕綁定事件
    oBtn.onclick = test;
</script>
2018年2月22日 03:17
編輯回答
忘了我
<input type="button" id="btn" value="點擊">

<script>
    function one(elm, event, fn) {
        function todo() {
            fn();
            elm.removeEventListener(event, todo);
        }
        elm.addEventListener(event, todo);
    }

    var btn = document.getElementById('btn');
    one(btn, 'click', function () {
        alert('只執(zhí)行一次');
    })
</script>
2017年1月11日 16:27
編輯回答
背叛者
<input type="button" value="按鈕" />
<script>
document.querySelector('input[type="button"]').onclick = function() {
  alert(this.value);
  this.onclick = null;
};
</script>
2017年12月9日 03:06
編輯回答
尐懶貓
var _ = true;
el.onclick = function() {
    if(!_) return;
    // your code
    _ = false;
}
2018年7月12日 23:15