2016-06-22 20 views
0

私はクラスのdivcontainer1内のテキストを太字にする方法を探していますが、コンテナ2内のdivに影響を与えることなく、内側と外側の両方に影響します。私は。)(子供)兄弟(。)(子供-組み合わせこれは、いくつかの親で可能であると確信しているが、私はどのようにjquery .parent()と他の親戚を使って1つのコンテナdiv内のクラスのdivに影響を及ぼす

サンプルHTML

<divcontainer1> 
    <div> 
    <div class="a button"> 
     button 
    </div> 
    </div> 
    <div> 
    <div> 
     <div class="a"> 
     affect 
     </div> 
    </div> 
    </div> 
    <div> 
    <div class="a"> 
     affect 
    </div> 
    </div> 
    <div> 
    <div class="b"> 
     don't affect 
    </div> 
    </div> 
</divcontainer1> 
<divcontainer2> 
    <div class="a"> 
    don't affect 
    </div> 
</divcontainer2> 

全くわからないんだけど、サンプルJS

$(document).ready(function(){ 
    $('.button').click(/* make all text inside container 1 bold*/) 
}); 

I)が(親を試してみました。親()。子供()。子供()。CSS( 'フォントの太'、 '太字')、それは

+0

あなたがIDを使用してみました容器を識別するには? – DCruz22

答えて

1
を動作していないようでした

.parentsを使用して、ボタンを含むdivcontainer1を探します。次に、.findを使用して、コンテナ内のアンカー要素を選択します。

$('.button').click(function(){ 
 
    $(this).parents('divcontainer1').find('.a').css('font-weight', 'bold'); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
 
<divcontainer1> 
 
    <div> 
 
    <div class="a button"> 
 
     button 
 
    </div> 
 
    </div> 
 
    <div> 
 
    <div> 
 
     <div class="a"> 
 
     affect 
 
     </div> 
 
    </div> 
 
    </div> 
 
    <div> 
 
    <div class="a"> 
 
     affect 
 
    </div> 
 
    </div> 
 
    <div> 
 
    <div class="b"> 
 
     don't affect 
 
    </div> 
 
    </div> 
 
</divcontainer1> 
 
<divcontainer2> 
 
    <div class="a"> 
 
    don't affect 
 
    </div> 
 
</divcontainer2>

注:これは、単一の文字クラス名を使用することをお勧めではありません。また、divではなく、buttonaの要素を実際に使用することもできます。あなたが「」ボタンが中に含まれているdivの中だけの要素を選択するために、親を使用してdivcontainerに移動し、クラスを持つ要素を見つけることができます

1
$("divcontainer1").find(".a").css("font-weight", "700"); 
+1

もしあなたがこれをしているのであれば、 '$(" divcontainer1 .a ").css(...' - いい理由がない限り...ここでの説明はまばらなものです –

+1

お願いします説明するためにあなたの答えを編集してください**なぜ**それは動作するはずですか? –

1

$(document).ready(function(){ 
    $('.button').click(function() { 
     $(this).parent().parent().find('.a').css('font-weight', 'bold'); 
    }); 
}); 
関連する問題