我的网站上有三个不同的幻灯片。幻灯片内的图像数量是由wordpress生成的。
我需要检查幻灯片是否包含多于一个的元素,如果是,则必须开始幻灯片显示。现在我遇到一个问题,我在jQuery每个函数中创建了一个间隔,并且在间隔中无法从每个函数访问$(this)。因此,调用间隔时什么也没有发生。
$( ".home .images .image-slide div" ).each(function() {
var count = $(this).children().length;
if (count > 1) {
$(this).find("img:first-child").addClass("active");
setInterval(function(){
if($(this).find('.active').is(":last-child")){
$(this).find('.active').removeClass("active").fadeOut().parent().find("img:first-child").addClass("active").fadeIn();
} else {
$(this).find('img.active').removeClass("active").fadeOut().next().fadeIn().addClass("active");
}
}, 4000);
}
});
如何使用$(this)访问区间内部?
答案 0 :(得分:1)
正如Marie在评论中指出的那样,您需要解决关闭问题。
通过将print_r($row)
移到$(this)
之外,这是使其工作的一种简单方法。
setInterval