你好先生,我正在練習我的 vanilla javascript。當從按鈕中單擊正確的字母時,我正在嘗試創建一個“劊子手游戲”.. 你贏了。我在查詢選擇器(字母 A 到字母 Z)中有所有這些按鈕。
使用問題這個功能..the winAlert = visible implements的時候letterS被點擊(的“謹慎”的最后一個字母)。
那么有沒有辦法當你以任何順序點擊所有謹慎的字母時,winAlert.style.visibility = "visible"將在函式內部執行?
在過去的幾個小時里buttons.forEach,我已經嘗試了所有東西.. ,切片等。沒有任何效果。
function youWonCautious() {
var buttons = [letterC, letterA, letterT, letterI, letterU, letterI, letterO, letterS]
for (var i = 0; i < buttons.length; i ) {
var button = buttons[0, 1, 2, 3, 4, 5, 6, 7];
button.onclick = function() {
winAlert.style.visibility = "visible"
}
}
}
uj5u.com熱心網友回復:
按鈕不會自動保持任何關于它們是否被點擊的狀態。您可以使用dataset按鈕的屬性自己完成此操作。
然后您的函式可以測驗是否所有按鈕都設定了此屬性。
或者,您可以將按鈕更改為復選框,并使用該checked屬性。
function allButtonsClicked(buttons) {
return buttons.every(b => b.dataset.chosen == 'true')
}
function youWonCautious() {
var buttons = [letterC, letterA, letterT, letterI, letterU, letterO, letterS];
buttons.forEach(button => {
button.dataset.chosen = 'true';
if (allButtonsClicked(buttons)) {
winAlert.style.visibility = "visible";
}
});
}
uj5u.com熱心網友回復:
您可以創建一個全域陣列,其中記錄用戶單擊的字母。檢查全域陣列變數和答案陣列中的字母。如果匹配,則向用戶傳遞警報訊息,否則將失敗訊息。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/388668.html
標籤:javascript 数组 功能 按钮 点击
上一篇:一鍵多行程
