2

次の html コードがあるとします。

<div class="all">
    <div class="test">
        <a class="test1" href="#">test</a>
    </div>
</div>

.js ファイルに a.test1 のコードをいくつか書いています。ページに 6 つまたは 7 つ以上の div.test があるかもしれません。それらのすべてを選択してクラスを変更したいと考えています。.js コンテンツを表示させてください。

$("document").ready(function () {
    $(".test1").live("click", function () {
        //Its where I want to select all div.test in the page
    });
});

さて、その方法。ありがとう。

4

5 に答える 5

1

以下を試してください

$('div.test').each(function(){
    $(this).addClass('testClass');
});
于 2013-06-08T08:56:24.377 に答える
1

.test1読み込まれたときに要素が HTML にある場合は、次のことをお勧めします。

$('.test1').on('click', function () {
    $('div.test').toggleClass('oldClassToRemove newClassToAdd');
});

または、それらがdiv.test後で要素に追加された場合 (したがって、イベントがバインドされた後):

$('div.test').on('click', '.test1', function () {
    $('.test').toggleClass('oldClassToRemove newClassToAdd');
});

jQuery 1.7 の時点でlive()廃止され、jQuery 1.9 の時点で jQuery ライブラリから削除されたことに注意してください。ではなく、 1.7 より前の jQuerydelegate()が推奨されlive()ます。

を使用した同等のアプローチdelegate():

$('div.test').delegate('.test1', 'click', function () {
    $('.test').toggleClass('oldClassToRemove newClassToAdd');
});

参考文献:

于 2013-06-08T09:02:35.377 に答える
0

情報を追加するためだけに、誰もhttp://api.jquery.com/category/selectors/に言及していません。ここでは、jquery で任意の要素を選択するすべての方法を説明しています

于 2013-06-08T09:14:18.303 に答える
0

使用してみてください:

jQuery(".test1").click(function() {
  // Do something there
});

jsフィドル

于 2013-06-08T09:00:42.527 に答える
0

これを使って。

$("document").ready(function () {
  $(document).on("click","a.test1", function () {

   $('div.test').removeClass('test').addClass('newClass');

  });
});

または

$("document").ready(function () {
  $(document).on("click","a.test1", function () {

   $('div.test').attr('class', 'newClass');

  });
});
于 2013-06-08T09:25:13.757 に答える