0

htmlコード

<div style="width: 1000px;margin: auto" class="cf"> 
<div class="bo" data-href="../../link1">click</div>
<div class="bo" data-href="../../link2">click 2</div>
<div class="bo" data-href="../../link3">click 3</div>
<iframe class='iframe hd' scrolling='no' frameborder='0'></iframe>

<div class="bo" data-href="../../link1">click</div>
<div class="bo" data-href="../../link2">click 2</div>
<div class="bo" data-href="../../link3">click 3</div>
<iframe class='iframe hd' scrolling='no' frameborder='0'></iframe>

<div class="bo" data-href="../../link1">click</div>
<div class="bo" data-href="../../link2">click 2</div>
<iframe class='iframe hd' scrolling='no' frameborder='0'></iframe>

任意のdivをクリックすると、次のiframeでhdクラスが削除され、クリックしたこの特定のdivの次のiframeのみが削除されます。

このセレクターをテストしました

$(".iframe:first")

動作しない

ありがとう

4

2 に答える 2

1

これを試してください-http://jsfiddle.net/aa8yK/

$("div").on("click", function() {
    var iframes = $(this).nextAll("iframe");
    iframes.eq(0).removeClass("hd");
});​
于 2012-07-07T09:47:15.087 に答える
0

ここでの秘訣は、すべてのiframe兄弟ではなく、次のiframeのみが選択されるようにすることです(後者は単純です-使用できますnextAll())。

これを試して

$('div').on('click', function() {               
    $(this).next('iframe').add($(this).nextUntil('iframe').next()).removeClass('hd');
});

[編集]-はるかに簡単な方法であり、@ Zoltanの答えのバリエーションは、単純に

$(this).nextAll('iframe:eq(0)').removeClass('hd');
于 2012-07-07T10:05:30.357 に答える