如果未單擊第一個按鈕,我希望用戶無法單擊第二個按鈕。我考慮過使用帶有專案符號的條件,但我找不到正確的設定方法。我與您分享代碼:
HTML:
<style>
.enable{
background-color: orangered;
pointer-events: auto;
cursor: pointer;
}
.disable{
background-color: gray;
pointer-events: none;
}
</style>
<button id="Act1" class="enable" type="button">1</button>
<button id="Act2" class="disable" type="button">2</button>
JS:
let act1 = document.getElementById('Act1')
let act2 = document.getElementById('Act2')
let clickTrue1 = false
function act1Clicked(){
clickTrue1 = true;
act2.classList.remove("disable");
act2.classList.add("enable");
localStorage.setItem('btn2-enabled', true);
}
if (localStorage.getItem('btn2-enabled'))
act1Clicked();
act1.addEventListener('click', act1Clicked);
if (clickTrue1 === true) {
function act2Clicked(){
act3.classList.remove("disable");
act3.classList.add("enable");
localStorage.setItem("btn3-enabled", true);
}
if(localStorage.getItem("btn3-enabled"))
act2Clicked();
act2.addEventListener('click', act2Clicked);
}
我認為我的問題是當我將 clickTrue1 設定為 true 時,true 會保留在我的函式中嗎?
謝謝 !
uj5u.com熱心網友回復:
function act2Clicked(){
if (clickTrue1 !== true) return;
act3.classList.remove("disable");
act3.classList.add("enable");
localStorage.setItem("btn3-enabled", true);
}
clickTrue1洗掉包裝 if 陳述句,如果不為真則退出函式
uj5u.com熱心網友回復:
這對你有幫助嗎?我洗掉了 localStorage 的東西,因為我不確定你希望它如何作業。
let act1 = document.getElementById('Act1')
let act2 = document.getElementById('Act2')
let clickTrue1 = false
function act1Clicked() {
console.log('act1Clicked')
clickTrue1 = true
act2.classList.remove("disable")
}
function act2Clicked() {
console.log('act2Clicked')
}
act1.addEventListener('click', act1Clicked)
act2.addEventListener('click', act2Clicked)
button {
background-color: orangered;
pointer-events: auto;
cursor: pointer;
}
.disable{
background-color: gray;
pointer-events: none;
}
<button id="Act1" class="enable" type="button">1</button>
<button id="Act2" class="disable" type="button">2</button>
uj5u.com熱心網友回復:
不太清楚為什么需要這么多代碼來解決這樣一個簡單的問題......還有更多嗎?按鈕 B 應該具有該disabled屬性。將“click”事件系結到按鈕 A。事件處理程式找到按鈕 B 并disabled從中洗掉屬性。
document.querySelector(".A").onclick = e =>
document.querySelector(".B").disabled = false;
button {font-size: 5ch; cursor: pointer;}
[disabled] {opacity:0.5}
<button class="A">??</button>
<button class="B" disabled>??</button>
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/513786.html
標籤:javascriptif 语句
上一篇:C中范圍內的反向陣列
