這是我的程式碼, 我希望當我向下或向上滾動時激活它們,而不是通過單擊它們
<input type="radio" name="buttons" id="r1" checked> <input type="radio" name="buttons" id="r2"> <input type="radio" name="buttons" id="r3"> <input type="radio" name="buttons" id="r4"> <div class="controls"> <label for="r1"><span></span>LAB & Process Development</label> <label for="r2"><span></span>Quality & Regulatory</label> <label for="r3"><span></span>Engineering & Project Management</label> <label for="r4"><span></span>EHS</label> </div>
謝謝你幫我
P粉6748763852024-04-02 00:32:07
我不太明白你想要實現什麼。
但是,如果您想在捲動上執行任何操作,則應該監聽滾動事件。 您有兩個選擇:
第一種情況:
document.getElementById('controls').addEventListener('scroll', () => { //activate your element });
第二種情況:
document.addEventListener('scroll', () => { //activate your element });
編輯:依照評論中的要求。 這取決於您想如何實現這一目標。例如,您可能想要透過循環檢查每個無線電:
let current = 1; let max = 4; document.addEventListener('scroll', () => { //you need to uncheck the current one first document.getElementById('r' + current).checked = false; //If you reach the last radio element you reset the counter if(current == max) current = 1; else current += 1; //Finally you activate the next radio document.getElementById('r' + current).checked = true; });
這是一個非常簡單的實現,可以改進。