如果未点击按钮攻击,我想阻止任何操作。在这种情况下,我想防止如果点击攻击你可以点击发送部队,否则提醒('你需要先攻击!')。此外,当时间用完时,如果可能的话,我希望时钟消失。
时钟
req
JS
<button class="attack" onclick="startTimer(60,document.querySelector('#time'))">ATTACK</button>
<button class="troops" onclick="send()">SEND TROOPS</button>
答案 0 :(得分:1)
您可以先将“已禁用”属性添加到“发送TROOPS”按钮,它会禁用此按钮,以防止单击该按钮。 单击“ATTACK”时可以删除该属性。
添加属性
document.getElementsByClassName("troops")[0]).setAttribute("disabled","disabled")
删除属性:
document.getElementsByClassName("troops")[0]).removeAttribute("disabled","disabled")
答案 1 :(得分:0)
您可以拥有一个全局标记(例如isAttacked
),它将存储是否单击了受攻击的按钮。然后在send
函数检查isAttacked
变量,如果它是true
派遣部队。
答案 2 :(得分:0)
你的意思是这样吗?
function startTimer(duration, display) {
// Make troops button enabled when attack button is clicked
document.getElementsByClassName("troops")[0].removeAttribute("disabled");
var timer = duration,minutes, seconds;
var timers = setInterval(runner, 1000);
function runner() {
minutes = parseInt(timer / 60, 10);
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.textContent = minutes + ":" + seconds;
if (--timer <= 0) {
clearInterval(timers)
finish()
}
}
}
<button class="attack" onclick="startTimer(60,document.querySelector('#time'))">ATTACK</button>
<!-- declare troops button disabled before attack has been clicked -->
<button class="troops" disabled onclick="send()">SEND TROOPS</button>