UNPKG

weui

Version:

A UI library by WeChat official design team, includes the most useful widgets/modules in mobile web applications.

94 lines (91 loc) 3.8 kB
<div class="page"> <div class="page__hd"> <h1 class="page__title">SearchBar</h1> <p class="page__desc">搜索栏</p> </div> <div class="page__bd"> <div class="weui-search-bar" id="searchBar"> <form id="searchForm" role="combobox" aria-haspopup="true" aria-expanded="false" aria-owns="searchResult" class="weui-search-bar__form"> <div class="weui-search-bar__box"> <i class="weui-icon-search"></i> <input type="search" aria-controls="searchResult" class="weui-search-bar__input" id="searchInput" placeholder="搜索" required/> <a href="javascript:" role="button" title="清除" class="weui-icon-clear" id="searchClear"></a> </div> <label for="searchInput" class="weui-search-bar__label" id="searchText"> <i class="weui-icon-search"></i> <span aria-hidden="true">搜索</span> </label> </form> <a href="javascript:" role="button" class="weui-search-bar__cancel-btn" id="searchCancel">取消</a> </div> <div role="listbox" class="weui-cells searchbar-result" id="searchResult"> <div role="option" class="weui-cell weui-cell_active weui-cell_access"> <div class="weui-cell__bd weui-cell_primary"> <p>实时搜索文本</p> </div> </div> <div role="option" class="weui-cell weui-cell_active weui-cell_access"> <div class="weui-cell__bd weui-cell_primary"> <p>实时搜索文本</p> </div> </div> <div role="option" class="weui-cell weui-cell_active weui-cell_access"> <div class="weui-cell__bd weui-cell_primary"> <p>实时搜索文本</p> </div> </div> <div role="option" class="weui-cell weui-cell_active weui-cell_access"> <div class="weui-cell__bd weui-cell_primary"> <p>实时搜索文本</p> </div> </div> </div> </div> </div> <script type="text/javascript"> $(function(){ var $searchBar = $('#searchBar'), $searchResult = $('#searchResult'), $searchText = $('#searchText'), $searchInput = $('#searchInput'), $searchClear = $('#searchClear'), $searchForm = $('#searchForm'), $searchCancel = $('#searchCancel'); function hideSearchResult(){ $searchResult.hide(); $searchForm.attr('aria-expanded','false'); $searchInput.val(''); } function cancelSearch(){ hideSearchResult(); $searchBar.removeClass('weui-search-bar_focusing'); $searchText.show(); } $searchText.on('click', function(){ $searchBar.addClass('weui-search-bar_focusing'); $searchInput.focus(); }); $searchInput .on('blur', function () { if(!this.value.length) cancelSearch(); }) .on('input', function(){ if(this.value.length) { $searchResult.show(); $searchForm.attr('aria-expanded','true'); } else { $searchResult.hide(); $searchForm.attr('aria-expanded','false'); } }) ; $searchClear.on('click', function(){ hideSearchResult(); $searchInput.focus(); }); $searchCancel.on('click', function(){ cancelSearch(); $searchInput.blur(); }); }); </script>