javascript jQuery next()在哪里使用

3b6akqbq  于 2023-05-21  发布在  Java
关注(0)|答案(2)|浏览(43)

当我点击链接时,我有以下函数来加载iFrames内容。
我正在尝试实现.next方法来每次加载一个iFrame,而不是一起加载。

$('.toggle-next-div').click(function () {
var iframe = $(this).next('.myiFrame');
iframe.attr("src", iframe.data("src"));
});

HTML

<a href="#" class="toggle-next-div">Map</a>
<div class="slidingDiv">
    <div style="margin-top:0">
        <span style="float:left;font-weight:bold">title</span>
        <iframe class="myiFrame" data-src="www.yahoo.com" src="about:blank"></iframe>  
    </div>
</div>
<div class="slidingDiv">
    <div style="margin-top:0; margin-right:10px; margin-bottom:10px; text-align:right">
        <span style="float:left; font-weight:bold">title</span>
        <iframe class="myiFrame" data-src="www.yahoo.com" src="about:blank"></iframe>  
    </div>
</div>
//and so on...

next()方法在我的html中不起作用,所以我需要一个替代的解决方案来处理这个html代码

v6ylcynt

v6ylcynt1#

.next选择所选元素的下一个兄弟元素,即.slidingDiv元素(* 如果它与指定的选择器匹配 *),您可以使用.find().next()方法:

var iframe = $(this).next('.slidingDiv').find('.myiFrame');

如果你想选择所有下一个兄弟.slidingDiv元素的所有.myiFrame后代元素,你可以使用.siblings().nextAll()方法:

$(this).nextAll('.slidingDiv').find('.myiFrame').attr('src', function(){
   return $(this).data('src');
});
ylamdve6

ylamdve62#

看起来这就是你想要的
HTML:

<a href="#" class="toggle-next-div">Map</a>
<div class="slidingDiv">
    <div style="margin-top:0">
        <span style="float:left;font-weight:bold">title</span>
        <iframe class="myiFrame" data-src="http://www.yahoo.com" src="about:blank"></iframe>  
    </div>
</div>
<div class="slidingDiv">
    <div style="margin-top:0; margin-right:10px; margin-bottom:10px; text-align:right">
        <span style="float:left; font-weight:bold">title</span>
        <iframe class="myiFrame" data-src="http://www.yahoo.com" src="about:blank"></iframe>  
    </div>
</div>

Javascript(jQuery):

var slidingDivs = $(".slidingDiv");
$('.toggle-next-div').click(function () {
    var iframe = slidingDivs.next().find('.myiFrame');
    iframe.attr("src", iframe.data("src"));
});

相关问题