このコードを機能させるのに問題があります:
$(function(){
$('div.tags').delegate('input:checkbox', 'change', function() {
var $lis = $('.results > li').hide();
//For each one checked
$('input:checked').each(function() {
$lis.filter('.' + $(this).attr('rel')).show();
});
});
});
次のようなHTMLの場合:
<div class="tags">
<label><input type="checkbox" rel="arts" /> Arts </label>
<label><input type="checkbox" rel="computers" /> Computers </label>
<label><input type="checkbox" rel="health" /> Health </label>
<label><input type="checkbox" rel="video-games" /> Video Games </label>
</div>
<ul class="results">
<li class="arts computers">Result 1</li>
<li class="video-games">Result 2</li>
<li class="computers health video-games">Result 3</li>
<li class="arts video-games">Result 4</li>
</ul>
IE、FF、Operaで試しましたが、期待どおりの結果が得られません。つまり、チェックボックスをクリックしてもコンテンツはフィルタリングされませんか?私はこれに似たものを複製しようとしています:
http://www.houseoffraser.co.uk/Jeans+for+Women/302,default,sc.html
ページの左側のサイドバーにあるアコーディオン効果に注目してください。アコーディオン自体はあまり気になりません。今注目しているのはチェックボックス機能です。ページの読み込み時に、すべてのクエリ結果(約1300程度)がユーザーに表示されます。
その後、ユーザーはチェックボックスをクリックして結果をフィルタリングまたは絞り込むことができます。これはある種のJquery/Ajaxスクリプトだと思いますが、完全にはわかりませんか?私は正しい方向に進んでいますか?
前もって感謝します。