如何创建一个在事件之间切换的按钮?
这是我试过的代码
function button (text, callback) {
var but = document.createElement('BUTTON');
var t = document.createTextNode(text);
but.appendChild(t);
var clicks = 0;
but.onclick = function () {
clicks += 1;
if (clicks % 2 !== 0) {
but.addEventListener('click', callback);
} else {
but.removeEventListener("click", callback);
}
}
答案 0 :(得分:0)
正如James Thorpe在评论中所说,这可以在不打开/关闭事件监听器的情况下完成。
您可以使用现有的点击事件,如下所示:
but.onclick = function () {
clicks += 1;
if (clicks % 2 !== 0) {
callback();
}
}