วิธีการ - ค้นหาเมนู
เรียนรู้วิธีสร้างเมนูค้นหาเพื่อกรองลิงก์ด้วย JavaScript
ค้นหา/กรองเมนู
วิธีค้นหาลิงค์ในเมนูนำทาง:
เนื้อหาของหน้า
เริ่มพิมพ์สำหรับหมวดหมู่/ลิงก์เฉพาะภายในแถบค้นหาเพื่อ "กรอง" ตัวเลือกการค้นหา
ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..
บางข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..ข้อความ..
ข้อความบางส่วน..
สร้างเมนูค้นหา
ขั้นตอนที่ 1) เพิ่ม HTML:
ตัวอย่าง
<input type="text" id="mySearch" onkeyup="myFunction()" placeholder="Search.."
title="Type in a category">
<ul id="myMenu">
<li><a href="#">HTML</a></li>
<li><a href="#">CSS</a></li>
<li><a href="#">JavaScript</a></li>
<li><a href="#">PHP</a></li>
<li><a href="#">Python</a></li>
<li><a href="#">jQuery</a></li>
<li><a href="#">SQL</a></li>
<li><a href="#">Bootstrap</a></li>
<li><a href="#">Node.js</a></li>
</ul>
หมายเหตุ:เราใช้ href="#" ในการสาธิตนี้เนื่องจากเราไม่มีหน้าที่จะเชื่อมโยง ในชีวิตจริง นี่ควรเป็น URL จริงไปยังหน้าใดหน้าหนึ่งโดยเฉพาะ
ขั้นตอนที่ 2) เพิ่ม CSS:
จัดรูปแบบช่องค้นหาและเมนูการนำทาง:
ตัวอย่าง
/* Style the search box */
#mySearch {
width: 100%;
font-size: 18px;
padding: 11px;
border: 1px solid #ddd;
}
/* Style the navigation
menu */
#myMenu {
list-style-type: none;
padding: 0;
margin: 0;
}
/* Style the navigation links */
#myMenu li a {
padding: 12px;
text-decoration: none;
color: black;
display: block
}
#myMenu li a:hover {
background-color: #eee;
}
ขั้นตอนที่ 3) เพิ่ม JavaScript:
ตัวอย่าง
<script>
function myFunction() {
// Declare variables
var input, filter,
ul, li, a, i;
input = document.getElementById("mySearch");
filter = input.value.toUpperCase();
ul =
document.getElementById("myMenu");
li =
ul.getElementsByTagName("li");
// Loop through all
list items, and hide those who don't match the search query
for (i = 0; i <
li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
}
else {
li[i].style.display = "none";
}
}
}
</script>
เคล็ดลับ:ลบtoUpperCase()หากคุณต้องการทำการค้นหาแบบคำนึงถึงขนาดตัวพิมพ์
เคล็ดลับ:ดูวิธีการกรองตารางด้วย
เคล็ดลับ:ดูวิธีการกรองรายการด้วย