$('#div_search').keypress(function() {
var search_term = $(this).val();
$('.ticker_list').children('div').each(function() {
var search_value = $(this).attr('search_term');
if (search_value.indexOf(search_term) >= 0) {
$(this).show();
}
else {
$(this).hide();
}
});
});
这真的很慢,这是有道理的,因为它运行了 500 个 div 并搜索每个“search_term”属性以查看输入的搜索词是否在 attr 中。有没有更好或更快的方法来做到这一点?我什至对更好的搜索机制感兴趣。
我也可以根据需要修改 DOM。
编辑 对不起我应该提到说搜索词是“你好今天约翰尼”,“你好”、“今天”和“约翰尼”这个词必须返回 true,这就是我在上面的脚本中使用 indexOf 的原因。