javascript 如何防止使用另一个按钮触发按钮上的点击事件?
How to prevent a click event on a button from triggering by using another button in javascript?
我有一个 ID 为 "myButton" 的按钮,当我点击它时,它应该每次将 ID 为 "clickCount" 的跨度中的计数增加 1,另一个按钮的 ID 为 "deactivate",当单击它应该不再允许计数增加,即使单击了 id "myButton" 的按钮,我可以管理计数的增加,但不知道如何在不禁用第一个按钮的情况下停止计数增加.
HTML
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>
Javascript
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
myButton.addEventListener("click", function() {
count++;
newCount.innerText = count;
});
当另一个按钮被点击时,从 #myButton
移除事件侦听器
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
function handler() {
count++;
newCount.innerText = count;
}
myButton.addEventListener('click', handler);
deact.addEventListener('click', () => myButton.removeEventListener('click', handler));
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>
您可以添加一个 boolean
,它在停用时变为 true,当它为 false 时允许递增:
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
let deactivated = false;
deact.addEventListener("click", function(){
deactivated = true;
});
myButton.addEventListener("click", function() {
if(!deactivated){
count++;
newCount.innerText = count;
}
});
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>
我有一个 ID 为 "myButton" 的按钮,当我点击它时,它应该每次将 ID 为 "clickCount" 的跨度中的计数增加 1,另一个按钮的 ID 为 "deactivate",当单击它应该不再允许计数增加,即使单击了 id "myButton" 的按钮,我可以管理计数的增加,但不知道如何在不禁用第一个按钮的情况下停止计数增加.
HTML
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>
Javascript
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
myButton.addEventListener("click", function() {
count++;
newCount.innerText = count;
});
当另一个按钮被点击时,从 #myButton
移除事件侦听器
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
function handler() {
count++;
newCount.innerText = count;
}
myButton.addEventListener('click', handler);
deact.addEventListener('click', () => myButton.removeEventListener('click', handler));
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>
您可以添加一个 boolean
,它在停用时变为 true,当它为 false 时允许递增:
let myButton = document.getElementById('myButton');
let newCount = document.getElementById('clickCount');
let deact = document.getElementById('deactivate');
let count = 0;
let deactivated = false;
deact.addEventListener("click", function(){
deactivated = true;
});
myButton.addEventListener("click", function() {
if(!deactivated){
count++;
newCount.innerText = count;
}
});
<button id="myButton">Click me!</button>
<p>You clicked on the button <span id="clickCount">0</span> times</p>
<button id="deactivate">Désactivate counting</button>