HTML
<button id="btn" value="250">Click Me</button>
JS
document.getElementById('btn').addEventListener('click',say,false);
function say() {
alert("this is add function !!!");
this.removeEventListener('click',function () {
alert("this is remove function");
},false);
}
我希望我的按钮上的功能如果用户第一次点击警告框显示“这是添加功能”但第二次点击比警报bix显示“这是删除功能”&amp;第三次再次显示“这是一个添加功能”,这将继续。
答案 0 :(得分:0)
保留计数器而不是添加和删除事件侦听器。
ScriptApp.newTrigger("startAcceptingResponses")
.timeBased()
.onWeekDay(ScriptApp.WeekDay.FRIDAY)
.atHour(9)
.nearMinute(25)
.everyWeeks(1) // The frequency
.create();
&#13;
document.getElementById('btn').addEventListener('click',say,false);
var ctr = 0;
function say() {
if(ctr%2 == 0) {
ctr = 1;
alert("this is add function !!!");
}
else {
ctr= 0;
alert("this is remove function");
}
}
&#13;
答案 1 :(得分:0)
您无需删除eventlistener,只需更改警报文本 - 在两个警报中,您需要点击事件监听器。
你可以保留旗帜或其他东西
document.getElementById('btn').addEventListener('click',say,false);
var showAddText = true;
function say() {
var alertText = showAddText ? 'this is add function' : 'this is remove function'
showAddText = !showAddText;
alert(alertText);
}
如果你想练习removeEventListener -
document.getElementById('btn').addEventListener('click',say,false);
function say() {
alert('this is add function');
document.getElementById('btn').removeEventListener('click',say,false);
document.getElementById('btn').addEventListener('click',say2,false);
}
function say2(){
alert('this is remove function');
document.getElementById('btn').removeEventListener('click',say2,false);
document.getElementById('btn').addEventListener('click',say,false);
}