在移動設備上,html5動態彈出選擇下拉菜單是非常常見的功能,可以為用戶提供更加友好和便捷的交互方式。下面我們來介紹一段使用html和JavaScript實現手機端動態彈出選擇下拉菜單的代碼。
<!-- html結構 --> <div id="select-container"> <input type="text" id="select-input" placeholder="請選擇"> <i class="fa fa-angle-down"></i> <div id="select-options"> <ul> <li>選項一</li> <li>選項二</li> <li>選項三</li> <li>選項四</li> </ul> </div> </div> <!-- javascript代碼 --> var selectContainer = document.querySelector("#select-container"); var selectInput = document.querySelector("#select-input"); var selectOptions = document.querySelector("#select-options"); var selectOptionItems = document.querySelectorAll("#select-options li"); var isOpen = false; // 點擊下拉框 selectContainer.addEventListener("click", function() { if (isOpen) { closeSelect(); } else { openSelect(); } }); // 選項點擊事件 for (var i = 0; i< selectOptionItems.length; i++) { selectOptionItems[i].addEventListener("click", function() { selectInput.value = this.innerText; closeSelect(); }); } // 打開下拉框 function openSelect() { isOpen = true; selectOptions.style.display = "block"; } // 關閉下拉框 function closeSelect() { isOpen = false; selectOptions.style.display = "none"; }
代碼中,首先我們定義了一個包含輸入框和下拉框的HTML結構,在JavaScript中使用選擇器獲取相關元素,并定義了變量isOpen表示下拉框是否展開。然后,我們為下拉框和選項添加了點擊事件,并通過打開和關閉下拉框函數來控制下拉框的顯示和隱藏。
除此之外,我們還為選項添加了點擊事件,當用戶選擇選項后,即可將選項的值賦給輸入框并關閉下拉框。這樣,就實現了一個簡單的手機端動態彈出選擇下拉菜單。