0

私はonclickを実行したい非常に単純なaddclass、removeclass関数を持っています。

$('#filter').click(function() {
$(this).closest('fieldset').find('.selectedfilter').removeClass('selectedfilter');
$(this).parent().addClass('selectedfilter');
});​

デビッド・トーマスは、まさにこれのための素晴らしい jsfiddle を提供しました: http://jsfiddle.net/davidThomas/eMx7X/

クリック可能な(非表示の)ラジオボタンと(表示されている)ラベルを含むID「フィルター」のフォームがあります。アクティブなクラスは、ページの読み込み時にチェックされるラベルに適用され、クリックすると別のラベルに変更される必要があります。

ただし、jquery 関数はこのページでは機能しません: http://www.alexbrunner.com/travels/。addclass、removeclass が機能しないだけでなく、quicksandプラグイン(短い .click-function がなくても、後続のリスト内のアイテムを適切にフィルタリングおよびソートする) も機能しなくなります。

問題がどこで発生するのか、私はかなり迷っています。これについて何か助けていただければ幸いです。ファイルは次の場所にあります。

http://www.alexbrunner.com/travels/

http://www.alexbrunner.com/style.css (セクション「quicksand shuffle」の関連行)

4

2 に答える 2

0

Firebug でページを確認してください - JavaScript エラーがあります:

不正な文字
}); <br> ----^
/travels/ (279 行目、3 列目)

$('#filter').click(function() {
    $(this).closest('fieldset').find('.selectedfilter').removeClass('selectedfilter');
    $(this).parent().addClass('selectedfilter');
});​ 

click()メソッドの最後に文字が表示されます。

于 2012-02-21T12:45:59.993 に答える
0
Try this
   $("#filter").live("click", function () {
  $(this).closest('fieldset').find('.selectedfilter').removeClass('selectedfilter');
  $(this).parent().addClass('selectedfilter');
   });​
于 2012-02-21T12:59:03.457 に答える