Framework7 - แถบค้นหา
คำอธิบาย
กรอบ 7 ช่วยให้การค้นหาองค์ประกอบโดยใช้searchbarระดับ
พารามิเตอร์แถบค้นหา
ส. เลขที่ | พารามิเตอร์และคำอธิบาย | ประเภท | ค่าเริ่มต้น |
---|---|---|---|
1 | searchList ค้นหาตัวเลือก CSS หรือองค์ประกอบ HTML ของรายการ |
สตริงหรือองค์ประกอบ HTML | - |
2 | searchIn คุณสามารถค้นหาองค์ประกอบมุมมองรายการของตัวเลือก CSS และค้นหาองค์ประกอบโดยส่งคลาส. item-title , .item-text |
สตริง | ".item-title" |
3 | found มันค้นหาตัวเลือก CSS หรือองค์ประกอบ HTML โดยใช้องค์ประกอบ "พบ" นอกจากนี้ยังใช้องค์ประกอบที่พบ. แถบค้นหาหากไม่มีองค์ประกอบที่ระบุ |
สตริงหรือองค์ประกอบ HTML | - |
4 | notfound มันค้นหาตัวเลือก CSS หรือองค์ประกอบ HTML โดยใช้องค์ประกอบ "ไม่พบ" นอกจากนี้ยังใช้องค์ประกอบ. searchbar-not-foundหากไม่มีการระบุองค์ประกอบ |
สตริงหรือองค์ประกอบ HTML | - |
5 | overlay มันค้นหาตัวเลือก CSS หรือองค์ประกอบ HTML โดยใช้องค์ประกอบ "การวางซ้อนแถบค้นหา" และใช้องค์ประกอบ. Searchbar-overlayหากไม่มีการระบุองค์ประกอบ |
สตริงหรือองค์ประกอบ HTML | - |
6 | ignore คุณสามารถละเว้นตัวเลือก CSS สำหรับรายการได้โดยใช้แถบค้นหา |
สตริง | ".searchbar- ละเว้น" |
7 | customSearch เมื่อเปิดใช้งานแถบค้นหาจะไม่ค้นหาผ่านบล็อกรายการใด ๆ ซึ่งระบุโดยsearchListและคุณจะได้รับอนุญาตให้ใช้ฟังก์ชันการค้นหาแบบกำหนดเอง |
บูลีน | เท็จ |
8 | removeDiacritics เมื่อค้นหาองค์ประกอบให้ลบตัวกำกับเสียงโดยเปิดใช้งานพารามิเตอร์นี้ |
บูลีน | เท็จ |
9 | hideDividers พารามิเตอร์นี้จะซ่อนตัวแบ่งรายการและชื่อกลุ่มหากไม่มีรายการ |
บูลีน | จริง |
10 | hideGroups พารามิเตอร์นี้จะซ่อนกลุ่มหากไม่พบรายการในกลุ่มมุมมองรายการ |
บูลีน | จริง |
การโทรกลับของแถบค้นหา
ส. เลขที่ | การโทรกลับและคำอธิบาย | ประเภท | ค่าเริ่มต้น |
---|---|---|---|
1 | onSearch วิธีนี้จะเริ่มการทำงานของฟังก์ชันโทรกลับขณะทำการค้นหา |
ฟังก์ชั่น) | - |
2 | onEnable วิธีนี้จะเริ่มการทำงานของฟังก์ชันโทรกลับเมื่อ Search Bar ทำงาน |
ฟังก์ชั่น) | - |
3 | onDisable วิธีนี้จะเริ่มการทำงานของฟังก์ชันโทรกลับเมื่อ Search Bar ไม่ทำงาน |
ฟังก์ชั่น) | - |
4 | onClear วิธีนี้จะเริ่มการทำงานของฟังก์ชันโทรกลับเมื่อคุณคลิกที่องค์ประกอบ "ล้าง" |
ฟังก์ชั่น) | - |
คุณสมบัติแถบค้นหา
ส. เลขที่ | คุณสมบัติและคำอธิบาย |
---|---|
1 | mySearchbar.params แสดงพารามิเตอร์เริ่มต้นที่ส่งผ่านกับออบเจ็กต์ |
2 | mySearchbar.query ค้นหาคำค้นหาปัจจุบัน |
3 | mySearchbar.searchList กำหนดบล็อกรายการค้นหา |
4 | mySearchbar.container กำหนดคอนเทนเนอร์แถบค้นหาด้วยองค์ประกอบ HTML |
5 | mySearchbar.input กำหนดอินพุตแถบค้นหาด้วยองค์ประกอบ HTML |
6 | mySearchbar.active กำหนดว่าแถบค้นหาเปิดหรือปิดใช้งาน |
วิธีการแถบค้นหา
ส. เลขที่ | วิธีการและคำอธิบาย |
---|---|
1 | mySearchbar.search(query); วิธีนี้จะค้นหาข้อความค้นหาที่ผ่าน |
2 | mySearchbar.enable(); เปิดใช้งานแถบค้นหา |
3 | mySearchbar.disable(); ปิดใช้งานแถบค้นหา |
4 | mySearchbar.clear(); คุณสามารถล้างคำค้นหาและผลการค้นหา |
5 | mySearchbar.destroy(); มันทำลายอินสแตนซ์แถบค้นหา |
เหตุการณ์ JavaScript ของแถบค้นหา
ส. เลขที่ | เหตุการณ์และคำอธิบาย | เป้าหมาย |
---|---|---|
1 | search คุณสามารถเริ่มเหตุการณ์นี้ได้ในขณะที่ค้นหาองค์ประกอบ |
<div class = "list-block"> |
2 | clearSearch เหตุการณ์นี้จะเริ่มทำงานเมื่อผู้ใช้คลิกที่องค์ประกอบ clearSearch |
<div class = "list-block"> |
3 | enableSearch เมื่อเปิดใช้งานแถบค้นหากิจกรรมนี้จะเริ่มทำงาน |
<div class = "list-block"> |
4 | disableSearch เมื่อแถบค้นหาถูกปิดใช้งานและผู้ใช้คลิกที่ปุ่มยกเลิกหรือองค์ประกอบ "การวางซ้อนแถบการค้นหา" เหตุการณ์นี้จะเริ่มทำงาน |
<div class = "list-block"> |
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงให้เห็นถึงการใช้แถบค้นหาในการเลื่อนใน Framework7 -
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1,
maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Search Bar Layout</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "pages navbar-fixed">
<div data-page = "home" class = "page">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "center sliding">Search Bar Layout</div>
</div>
</div>
<form data-search-list = ".list-block-search" data-search-in = ".item-title"
class = "searchbar searchbar-init">
<div class = "searchbar-input">
<input type = "search" placeholder = "Search"><a href = "#"
class = "searchbar-clear"></a>
</div>
<a href = "#" class = "searchbar-cancel">Cancel</a>
</form>
<div class = "searchbar-overlay"></div>
<div class = "page-content">
<div class = "content-block searchbar-not-found">
<div class = "content-block-inner">No element found...</div>
</div>
<div class = "list-block list-block-search searchbar-found">
<ul>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">India</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Argentina</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Belgium</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Brazil</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Canada</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Colombia</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Denmark</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Ecuador</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">France</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Germany</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Greece</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Haiti</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Hong Kong</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Iceland</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Ireland</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Jamaica</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Japan</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Kenya</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Kuwait</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Libya</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Liberia</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Malaysia</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Mauritius</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Mexico</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Namibia</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">New Zealand</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Oman</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Paraguay</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Philippines</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Russia</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Singapore</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">South Africa</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Thailand</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">United Kingdom</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Vatican City</div>
</div>
</li>
<li class = "item-content">
<div class = "item-inner">
<div class = "item-title">Zimbabwe</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
var myApp = new Framework7();
var mainView = myApp.addView('.view-main');
</script>
</body>
</html>
เอาต์พุต
ให้เราทำตามขั้นตอนต่อไปนี้เพื่อดูว่าโค้ดที่ระบุข้างต้นทำงานอย่างไร -
บันทึกโค้ด HTML ที่ระบุข้างต้น search_bar.html ไฟล์ในโฟลเดอร์รูทเซิร์ฟเวอร์ของคุณ
เปิดไฟล์ HTML นี้เป็น http: //localhost/search_bar.html และผลลัพธ์จะแสดงดังที่แสดงด้านล่าง
หากมีการป้อนองค์ประกอบที่มีอยู่ในรายการในแถบค้นหาองค์ประกอบนั้นจะแสดงองค์ประกอบนั้นจากรายการ
หากป้อนองค์ประกอบอื่นนอกเหนือจากองค์ประกอบที่มีอยู่ในรายการองค์ประกอบนั้นจะไม่พบองค์ประกอบ