jquery.fastLiveFilter.js实现输入自动过滤的方法
2019/6/29 22:25:02
本文主要是介绍jquery.fastLiveFilter.js实现输入自动过滤的方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
本文实例讲述了jquery.fastLiveFilter.js实现输入自动过滤的方法。分享给大家供大家参考。具体如下:
本效果是使用jquery.fastLiveFilter.js插件来实现的,类似于搜索框的输入提示功能,实现对匹配项目的自动过滤功能,当你输入的时候,会根据输入的字符智能匹配符合的内容,自动列出来,提高人性化操作体验,如果您对jquery.fastLiveFilter.js插件的用法感兴趣,这是个很不错的例子。
运行效果截图如下:
具体代码如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>jQuery过滤器插件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="输入文字开始筛选"> <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>
希望本文所述对大家的jquery程序设计有所帮助。
这篇关于jquery.fastLiveFilter.js实现输入自动过滤的方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-06jquery对css样式(jquery中的css方法)-icode9专业技术文章分享
- 2023-05-27JQuery的认识和安装
- 2023-01-06JQuery应用技巧:如何定义 HTML 模板并使用 JQuery 进行加载-icode9专业技术文章分享
- 2022-09-29复习-jQuery
- 2022-09-04Python3项目初始化10-->前端基础jquery、ajax,sweetalert--更新用户改造
- 2022-08-30day 27 jquery
- 2022-08-29jQuery筛选器,bootstrap
- 2022-08-20JQuery事件绑定
- 2022-08-20JQuery案例
- 2022-08-07关于jQuery的学习