jquery searchable
vents
最新版本:v1.1.0 (查看更新日志)
微型、快速的 jQuery 插件,可在您键入时搜索元素。该插件由Stidges ( Twitter | Github ) 创建和维护。
单击此处查看该插件的实际演示(托管在 Bootsnipp 上)
下载此插件后,加载 jQuery 后将其包含在 HTML 文件中:
< script src =" jquery.js " > </ script >
< script src =" jquery.searchable.js " > </ script >
注意:如果你想支持像<IE9这样的旧版浏览器,你可以使用jquery.searchable-ie.js
而不是jquery.searchable.js
。此版本包含Array.prototype.reduce
函数的填充,因此稍大(几百字节)。
之后,您可以简单地在所需元素上初始化插件。此示例使用 id 为“table”的表。默认情况下,该插件使用 id 为“search”的输入(请参阅下面的配置部分了解如何更改此设置):
$ ( '#table' ) . searchable ( ) ;
该插件提供以下配置选项:
选项 | 默认值 | 描述 |
---|---|---|
选择器 | 'tbody tr' | 在初始化插件的元素中定义主 jQuery 选择器。这将选择要显示或隐藏的容器元素,例如表中的tr 或可搜索元素中的div.your-special-class 。 |
子选择器 | 'td' | 定义上面定义的“选择器”内的子选择器。这将选择 'selector' 元素中的可搜索元素,例如td 或.searchable 。 |
搜索字段 | '#search' | 用于搜索输入过滤器的输入元素 |
有条纹的 | false | 定义元素是否条带化以及是否应在搜索时重新条带化( true 或false ) |
奇数行 | { } | 定义应用于奇数行的 CSS 对象(当striped 设置为true 时)。 |
偶数行 | { } | 定义应用于偶数行的 CSS 对象(当striped 设置为true 时)。 |
隐藏 | function | 允许您定义自定义隐藏功能。该函数接受一个参数,即被隐藏的元素(行)。默认情况下,它将使用elem.hide() 来隐藏该行。 |
展示 | function | 允许您定义自定义显示功能。该函数接受一个参数,即被隐藏的元素(行)。默认情况下,它将使用elem.show() 显示该行。 |
搜索类型 | 'default' | 定义搜索时要使用的匹配器。允许的值为'fuzzy' 、 'strict' 和'default' 。 |
搜索活动 | false | 允许您定义搜索处于活动状态时要调用的函数。每当用户在搜索输入中键入并且搜索输入不为空时,就会调用此函数。可搜索元素和搜索词将传递给该函数。 |
搜索空 | false | 允许您定义搜索输入为空时要调用的函数。当搜索输入为空或清除时,将调用该函数一次。可搜索元素将传递给该函数。 |
搜索焦点 | false | 允许您定义当搜索输入获得焦点时要调用的函数。该函数的this 上下文将是搜索输入元素。 |
搜索模糊 | false | 允许您定义搜索输入模糊时要调用的函数。该函数的this 上下文将是搜索输入元素。 |
加载时清除 | false | 确定是否应在页面加载时清除搜索输入( true 或false )。 |
此示例使用上面显示的配置来自定义插件:
$ ( '#element' ) . searchable ( {
selector : '.row' ,
childSelector : '.column' ,
searchField : '#mySearchInput' ,
striped : true ,
oddRow : { 'background-color' : '#f5f5f5' } ,
evenRow : { 'background-color' : '#fff' } ,
hide : function ( elem ) {
elem . fadeOut ( 50 ) ;
} ,
show : function ( elem ) {
elem . fadeIn ( 50 ) ;
} ,
searchType : 'fuzzy' ,
onSearchActive : function ( elem , term ) {
elem . show ( ) ;
} ,
onSearchEmpty : function ( elem ) {
elem . hide ( ) ;
} ,
onSearchFocus : function ( ) {
$ ( '#feedback' ) . show ( ) . text ( 'Type to search.' ) ;
} ,
onSearchBlur : function ( ) {
$ ( '#feedback' ) . hide ( ) ;
} ,
clearOnLoad : true
} ) ;
版本1.0.0:
1.1.0版本:
clearOnLoad
设置,允许您在页面加载/刷新时清除搜索输入。 请随时提交任何问题或请求请求,我们非常欢迎。提交Issue时,请注明版本号并详细描述问题,以便尽快解决!
版权所有 (c) 2014 - Stidges - 根据 MIT 许可证获得许可。