jquery.fastLiveFilter.js實(shí)現(xiàn)輸入自動(dòng)過(guò)濾的方法
本文實(shí)例講述了jquery.fastLiveFilter.js實(shí)現(xiàn)輸入自動(dòng)過(guò)濾的方法。分享給大家供大家參考。具體如下:
本效果是使用jquery.fastLiveFilter.js插件來(lái)實(shí)現(xiàn)的,類(lèi)似于搜索框的輸入提示功能,實(shí)現(xiàn)對(duì)匹配項(xiàng)目的自動(dòng)過(guò)濾功能,當(dāng)你輸入的時(shí)候,會(huì)根據(jù)輸入的字符智能匹配符合的內(nèi)容,自動(dòng)列出來(lái),提高人性化操作體驗(yàn),如果您對(duì)jquery.fastLiveFilter.js插件的用法感興趣,這是個(gè)很不錯(cuò)的例子。
運(yùn)行效果截圖如下:
具體代碼如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>jQuery過(guò)濾器插件fastLiveFilter</title> <script src="jquery-1.6.2.min.js"></script> <script> //jquery.fastLiveFilter.js jQuery.fn.fastLiveFilter = function(list, options) { options = options || {}; list = jQuery(list); var input = this; var lastFilter = ''; var timeout = options.timeout || 0; var callback = options.callback || function() {}; var keyTimeout; var lis = list.children(); var len = lis.length; var oldDisplay = len > 0 ? lis[0].style.display : "block"; callback(len); input.change(function() { var filter = input.val().toLowerCase(); var li, innerText; var numShown = 0; for (var i = 0; i < len; i++) { li = lis[i]; innerText = !options.selector ? (li.textContent || li.innerText || "") : $(li).find(options.selector).text(); if (innerText.toLowerCase().indexOf(filter) >= 0) { if (li.style.display == "none") { li.style.display = oldDisplay; } numShown++; } else { if (li.style.display != "none") { li.style.display = "none"; } } } callback(numShown); return false; }).keydown(function() { clearTimeout(keyTimeout); keyTimeout = setTimeout(function() { if( input.val() === lastFilter ) return; lastFilter = input.val(); input.change(); }, timeout); }); return this; } </script> <script> $(function() { $('#search_input').fastLiveFilter('#search_list'); }); </script> <style type="text/css"> body { margin: 0px; background-color: #F6F6F6; } .jq22{ width: 600px; height: 500px; margin-left: auto; margin-right: auto; background-color: #FFFFFF; padding: 10px; } </style> </head> <body> <div class="jq22"> <input id="search_input" placeholder="輸入文字開(kāi)始篩選"> <ul id="search_list"> <li>One</li> <li>Two</li> <li>Three</li> <li>One</li> <li>awo</li> <li>bhree</li> <li>cne</li> <li>dwo</li> <li>ehree</li> <li>fne</li> <li>gwo</li> <li>hhree</li> <li>ihree</li> </ul> </div> </body> </html>
希望本文所述對(duì)大家的jquery程序設(shè)計(jì)有所幫助。
- Javascript中關(guān)于Array.filter()的妙用詳解
- AngularJS中的過(guò)濾器filter用法完全解析
- JavaScript 數(shù)組some()和filter()的用法及區(qū)別
- JavaScript中利用Array filter() 方法壓縮稀疏數(shù)組
- JavaScript之filter_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- 詳解AngularJS中的filter過(guò)濾器用法
- Vue.js報(bào)錯(cuò)Failed to resolve filter問(wèn)題的解決方法
- AngularJS過(guò)濾器filter用法總結(jié)
- 詳解AngularJS Filter(過(guò)濾器)用法
- JavaScript中filter的用法實(shí)例分析
相關(guān)文章
關(guān)于setInterval、setTimeout在jQuery中的使用注意事項(xiàng)
最近碰到個(gè)問(wèn)題,在使用jquery寫(xiě)定時(shí)器時(shí),總是會(huì)出現(xiàn)fn不存在的錯(cuò)誤提示2011-09-09jquery.ajax的url中傳遞中文亂碼問(wèn)題的解決方法
本篇文章主要是對(duì)jquery.ajax的url中傳遞中文亂碼問(wèn)題的解決方法進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR錯(cuò)誤
今天測(cè)試偶然發(fā)現(xiàn)jquery.bgiframe.js在IE9環(huán)境下提示錯(cuò)誤,于是很是好奇,想辦法知道究竟,于是搜索了一下,現(xiàn)在與大家分享希望可以幫助你們2013-01-01jQuery函數(shù)的第二個(gè)參數(shù)獲取指定上下文中的DOM元素
這篇文章主要介紹了jQuery函數(shù)的第二個(gè)參數(shù)獲取指定上下文中的DOM元素,需要的朋友可以參考下2014-05-05jQuery對(duì)象和DOM對(duì)象使用說(shuō)明
jQuery對(duì)象和DOM對(duì)象使用說(shuō)明,需要的朋友可以參考下。2010-06-06JQUERY的AJAX請(qǐng)求緩存里的數(shù)據(jù)問(wèn)題處理
這篇文章主要介紹了JQUERY的AJAX請(qǐng)求緩存里的數(shù)據(jù)問(wèn)題處理的相關(guān)資料,需要的朋友可以參考下2016-02-02