頁面有四個類別按鈕(雜誌、網站、APP、報紙),每個按鈕對應一個 <select> 下拉框。點擊某按鈕時,顯示對應下拉框,隱藏其他。
data-sort,值對應目標下拉框的 id。btn),所有下拉框統一選取。data-sort 顯示目標下拉框。var btns = document.querySelectorAll('.btn');
var selects = document.querySelectorAll('select');
for (var i = 0; i < btns.length; i++) {
btns[i].onclick = function() {
// 隱藏所有
for (var t = 0; t < selects.length; t++) {
selects[t].style.display = 'none';
}
// 顯示目標
var attr = this.getAttribute('data-sort');
var target = document.querySelector('#' + attr);
if (target) target.style.display = 'block';
};
}
classList.toggle 或 CSS class 控制顯示/隱藏,分離樣式與邏輯。Map<string, HTMLSelectElement> 快速查找。aria-expanded、鍵盤焦點管理。此模式適用於標籤切換、表單動態顯示等場景。