您需要过滤页面上的一组元素吗?也许您有一个长列表,并且只想显示与您在搜索字段中键入的字符匹配的列表项。
在这篇博客文章中,我将向您介绍一个全新的jQuery插件,它可以帮助您做到这一点!它被称为“jqSearch”,使用起来非常简单。继续阅读以获取更多信息。
1.要开始,请在加载最新的jquery库后包含主JavaScript jquery-search.js。
- <script src="/path/to/cdn/jquery.min.js"></script>
- <script src="/path/to/jquery-search.js"></script>
2.创建一个搜索字段来筛选您的数据。
- <input type="text" id="search" placeholder="Type To Search" />
3.调用要过滤的目标元素上的函数。
- <ul id="items-to-search">
- <li>Han Solo</li>
- <li>Darth Vader</li>
- <li>Boba Fett</li>
- <li>R2-D2</li>
- <li>Chewbacca</li>
- <li>Yoda</li>
- <li>Luke Skywalker</li>
- <li>Darth Maul</li>
- <li>Stormtrooper</li>
- <li>Princess Leia</li>
- <li>Ben Kenobi</li>
- <li>Anakin Skywalker</li>
- </ul>
- $('#items-to-search li').jqSearch({
- searchInput: '#search',
- searchTarget: 'text',
- });
4.插件不仅支持HTML列表,还支持任何内联或块元素。
- <div id="items-to-search">
- <p>Han Solo</p>
- <p>Darth Vader</p>
- <p>Boba Fett</p>
- <p>R2-D2</p>
- <p>Chewbacca</p>
- <p>Yoda</p>
- <p>Luke Skywalker</p>
- <p>Darth Maul</p>
- <p>Stormtrooper</p>
- <p>Princess Leia</p>
- <p>Ben Kenobi</p>
- <p>Anakin Skywalker</p>
- </div>
- $('#items-to-search p').jqSearch({
- searchInput: '#search',
- searchTarget: 'text',
- });
5.您也可以根据您在数据
属性:
- <div id="items-to-search">
- <div data-search-data="Han Solo">
- <div class="well well-sm">Han Solo</div>
- </div>
- <div data-search-data="Darth Vader">
- <div class="well well-sm">Darth Vader</div>
- </div>
- <div data-search-data="Boba Fett">
- <div class="well well-sm">Boba Fett</div>
- </div>
- </div>
- $('#items-to-search > div').jqSearch({
- searchInput: '#search',
- searchTarget: 'data'
- });
6.确定过滤时要应用于元素的动画。“淡入淡出”(默认设置)或“滑动”。
- $('#items-to-search li').jqSearch({
- searchInput: '#search',
- searchTarget: 'text',
- animation: 'slide'
- });