1

既に構築されている JavaScript スライダーに機能を追加しようとしています。人々がクリックしてスライド内の適切なビデオに移動できるビデオの画像を追加しようとしています。jQueryでこれを達成しようとしています。div.navBulletsWrapper 内の div の属性を取得する方法を知りたいです。現時点での私のコードは、rel 値を取得してそれに応じてクラスを設定するのではなく、すべての div を rel="0" に変更しているようです。助けてくれてありがとう。

HTML:

<div class="video-thumbnail">
    <a id="video-thumbnail1">
       <img src="/_images/VideoImages/btn_FreeConsultation.png" />
    </a>
</div>

これは、スライダーの JavaScript によって動的に作成されています。

<div class="navBulletsWrapper">
    <div class="active" rel="0"> … </div>
    <div rel="1"> … </div>
    <div rel="2"> … </div>
    <div rel="3"> … </div>
</div>

jQuery:

$(document).ready(function(){

    $('#video-thumbnail1').click(function(){
        $('div.navBulletsWrapper div').attr("rel", "0").addClass("active");
    });

});

完全なコードを見たい場合のライブ Web サイト: http://www.hazeltonlawgroup.com

4

4 に答える 4

1

属性に従って div を見つけたい場合は、セレクターを使用して行う必要があります。

$('div.navBulletsWrapper div[rel="0"]').addClass('active') ;

他の div からクラスを削除する場合:

$('div.navBulletsWrapper div:not([rel="0"])').removeClass('active')
于 2013-09-05T20:46:42.887 に答える
1
$('div.navBulletsWrapper div').attr("rel", "0")

これにより、属性を持つすべての子divが設定されますrel="0" .

その div.. をターゲットにする場合は、セレクターでこれらの行を確認する必要があります。

$('div.navBulletsWrapper').find("[rel='0']").addClass("active");
于 2013-09-05T20:45:48.707 に答える
1

attar メソッドを使用すると、属性を設定および取得できます。

el.attr('attribute',value')

属性を設定します。

el.attr('attribute')

属性値を取得します。

コードを次のように変更するだけです

$(document).ready(function(){

    $('#video-thumbnail1').click(function(){
        $('div.navBulletsWrapper div[rel='+index+']').addClass("active");
    });

});

indexは、「アクティブ」クラスを追加する要素です

于 2013-09-05T20:47:40.983 に答える
0

別の方法

$('div.navBulletsWrapper div').filter("[rel=0]").addClass("active");

また

$('div.navBulletsWrapper').find("div[rel=0]").addClass("active");
于 2013-09-05T20:52:34.587 に答える