框架7允许使用搜索栏类搜索元素.
S.No | 参数&说明 | 类型 | 默认 |
---|---|---|---|
1 | searchList 它搜索列表的CSS选择器或HTML元素. | string或HTML Element | - |
2 | searchIn 您可以搜索CSS选择器的列表视图元素,也可以通过传递 .item-title , .item-text 类. | string | '.item-title' |
3 | found 它使用"found"元素搜索CSS选择器或HTML元素.此外,如果没有指定元素,它使用 .searchbar-found 元素. | string或HTML Element | - |
4 | notfound 它使用"not-found"元素搜索CSS选择器或HTML元素.此外,如果没有指定元素,它使用 .searchbar-not-found 元素. | string或HTML Element | - |
5 | overlay 它使用"searchbar overlay"元素搜索CSS选择器或HTML元素并使用 .searchbar-overlay 元素,如果没有指定元素. | string或HTML Element | - |
6 | ignore 您可以使用搜索栏忽略项目的CSS选择器. | string | '.searchbar-ignore' |
7 | customSearch 启用后,搜索栏不会搜索 searchList 指定的任何列表块,您将被允许使用自定义搜索功能离度. | boolean | false |
8 | removeDiacritics 搜索元素时,通过启用此参数来删除变音符号. | boolean | false |
9 | hideDividers 如果没有项目,此参数将隐藏项目分隔符和组标题. | boolean | true |
10 | hideGroups 此参数将隐藏组,如果有没有在列表视图组中找到的项目. | boolean | true |
S.No | Callbacks&说明 | 类型 | 默认 |
---|---|---|---|
1 | onSearch 此方法将在搜索时触发回调函数. | function(s) | - |
2 | onEnable 当搜索栏变为活动状态时,此方法将触发回调函数. | function(s) | - |
3 | onDisable 这当搜索栏变为非活动状态时,方法将触发回调函数. | function(s) | - |
4 | onClear 单击"clear"元素时,此方法将触发回调函数. | function(s) | - |
S.No | 属性&说明 |
---|---|
1 | mySearchbar.params 表示用对象传递的初始化参数. |
2 | mySearchbar.query 搜索当前查询. |
3 | mySearchbar.searchList 定义搜索列表块. |
4 | mySearchbar.container 使用HTML元素定义搜索栏容器. |
5 | mySearchbar.input 使用HTML元素定义搜索栏输入. |
6 | mySearchbar.active 它定义是启用还是禁用搜索栏. |
S.No | Methods & Description |
---|---|
1 | mySearchbar.search(query); This method searches the passed query. |
2 | mySearchbar.enable(); It enables the search bar. |
3 | mySearchbar.disable(); It disables the search bar. |
4 | mySearchbar.clear(); You can clear the query and search results. |
5 | mySearchbar.destroy(); It destroys the search bar instance. |
S.No | Event & Description | Target |
---|---|---|
1 | search You can fire this event while searching elements. | <div class="list-block"> |
2 | clearSearch This event will get fired when user clicks on the clearSearch element. | <div class="list-block"> |
3 | enableSearch When Search Bar becomes enable, this event will get fired. | <div class="list-block"> |
4 | disableSearch When Search Bar gets disabled, and user clicks on cancel button, or "search bar-overlay" element, this event will get fired. | <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://img01.yuandaxia.cn/Content/img/tutorials/framework7/framework7.ios.min.css" /> <link rel = "stylesheet" href = "https://img01.yuandaxia.cn/Content/img/tutorials/framework7/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文件保存在服务器根文件夹中。
以http://localhost/search_bar.html打开此HTML文件,输出显示如下。
如果列表中包含的元素在搜索栏中输入,则会在列表中显示该特定元素。
如果输入了列表中包含的元素以外的元素,则不会显示找到的元素。