首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用jQuery淡出列表中的下一个图像?

如何使用jQuery淡出列表中的下一个图像?
EN

Stack Overflow用户
提问于 2014-06-08 19:49:10
回答 2查看 66关注 0票数 0

我有一张照片清单。我想在下一个图像淡出后,先前的图像已经褪色。我觉得应该很简单。

代码语言:javascript
复制
<ul class="nav fading">
  <li><?= anchor("#","Supported by",array("class" => "footer-heading disabled")) ?></li>
  <li><?= img("assets/img/1.png") ?></li>
  <li><?= img("assets/img/2.png") ?></li>
</ul>

到目前为止我的代码是:

代码语言:javascript
复制
$(document).ready(function(){
    $(".fading img").hide(); //hide everything 
    $(".fading img:first").fadeIn(4000);
    $(".fading img:first").fadeOut(4000,function(){
        $(this).parent().next().fadeIn(4000);
    });
});

我试图在相同的图像褪色后,再次将其淡出,这是可行的:

代码语言:javascript
复制
$(document).ready(function(){
        $(".fading img").hide(); //hide everything 
        $(".fading img:first").fadeIn(4000);
        $(".fading img:first").fadeOut(4000,function(){
            $(this).fadeIn(4000);
        });
    });

当我试图淡出列表中的下一个图像时,问题就出现了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-08 20:01:50

要想从另一个人那里找到一个<img>,你必须回到.find().children()的“一代人”,因为它已经和.parent()一起上升了。

代码语言:javascript
复制
$(this)             // the current, `:first` <img>
    .parent()       // to its parent <li> (2nd under the <ul>)
    .next()         // to the last <li>
    .find('img')    // to the <img> under the last <li>
    .fadeIn(4000);

否则,行将查找并尝试.fadeIn() <li>,这不会影响其下的<img>

代码语言:javascript
复制
$(this).parent().next().fadeIn(4000);
票数 2
EN

Stack Overflow用户

发布于 2014-06-08 20:00:28

我建议如下

替换这个

代码语言:javascript
复制
$(this).parent().next().fadeIn(4000);

有了这个

代码语言:javascript
复制
$(this).parent().next().find('img').fadeIn(4000);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24110176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档