我想要一个点击动作来在第五次点击时禁用一个按钮,但我不能在Here's the javascript中工作。
var currentTurn = 1;
function taketurn(){
currentTurn++;
document.getElementById("turn").innerHTML = currentTurn;
threeturns(currentTurn);
}
function threeturns(now) {
if(now > 3){
document.getElementById("livedead").innerHTML = "disabled";
}
}
然后是html
<div class="container">
<h1>turn <span id="turn">1</span></h1>
<button onclick="taketurn()" type="button" class="btn btn-lg btn-info" <span id="livedead"></span> /> next</button>
<button onclick="taketurn()" type="button" class="btn btn-lg btn-info" disabled> next</button>
</div>
发布于 2018-10-22 04:25:09
您的代码中有几处需要稍作更改。需要对HTML进行一些更正,这样就不会在开始<button>
标记内定义livedead
跨度。
此外,通过设置按钮Node
对象上的disabled
字段(即,不是通过将innerHTML设置为disabled),可以使用javascript禁用按钮。
我建议对您的代码做一些修改--关键的一点是使用MouseEvent
对象。
在您的情况下,这将简化禁用您的用户正在单击的按钮。为了说明MouseEvent
对象的用法,请看下面的代码:
var currentTurn = 1;
// add a parameter to function to give us access to the event
// for this click interaction
function taketurn(event){
// if click count is 5 or more, then disable this button
if(currentTurn >= 5) {
// we access the button via the event parameter that we
// passed in. The currentTarget represents the button, so
// we can set disabled on the button to disable it.
event.currentTarget.disabled = 'disabled'
}
currentTurn ++;
document.getElementById("turn").innerHTML = currentTurn;
}
<div class="container">
<h1>turn <span id="turn">1</span></h1>
<!-- pass event defined for the click interaction, to taketurn() -->
<button onclick="taketurn(event)" type="button" class="btn btn-lg btn-info" id="livedead"> next</button>
<button onclick="taketurn()" type="button" class="btn btn-lg btn-info" disabled> next</button>
</div>
https://stackoverflow.com/questions/52919002
复制相似问题