次のような jQuery/HTML セレクターを使用してデータをフィルター処理しようとしています
$("li[data-filter*='keyword']")
しかし、これは「keyword1 keyword2」と「keyword2 keyword1 」をフィルタリングして同じ結果を得ることができません。
デモをします..
HTML :
<input>
<li data-filter="apple pie gummi bears gummi bears john">
Apple pie gummi bears gummi bears John
</li>
<li data-filter="oat cake chocolate bar chupa chups dessert tootsie">
Oat cake chocolate bar chupa chups dessert tootsie
</li>
<li data-filter="jujubes cookie sugar plum lemon drops candy">
Jujubes cookie sugar plum lemon drops candy
</li>
jQuery :
var filter_timer;
$("input").keypress(function() {
clearTimeout(filter_timer);
filter_timer=setTimeout(function(){
filter();
},500);
});
function filter() {
var keyword = $("input").val();
if($("li[data-filter*='"+keyword+"']").length) {
$("li").animate({opacity:0.4}).css({"text-decoration":"line-through"});
$("li[data-filter*='"+keyword+"']").animate({opacity:1}).css({"text-decoration":"blink"});
}else{
$("li").animate({opacity:1},function(){$("li").removeAttr("style")});}
}
プレイグラウンド: http://jsfiddle.net/9eaXD/
アップルパイとパイアップルまたはアップルグミペイを検索すると、どうすれば同じ結果を得ることができますか