首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >委派、替换和淡入/ jQuery

问委派、替换和淡入/ jQuery
EN

Stack Overflow用户
提问于 2012-05-14 17:03:30
回答 3查看 243关注 0票数 1

一个与jQuery相关的问题-我有一个小画廊风格的脚本工作-缩略图的列表和相关的大图像切换缩略图点击,如下所示:

代码语言:javascript
复制
$('#thumbs').delegate('img','click', function(){
    $('#largeImage').attr('src',$(this).attr('src').replace('thumb','large'));
});

我的问题是:让图像之间的过渡相互褪色而不是直接切换的最简单方法是什么?

非常感谢您的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-14 17:06:23

您可以对图片进行fadeOut,然后在交换src后的回调中使用fadeIn

代码语言:javascript
复制
$('#thumbs').delegate('img','click', function(){
    var src = this.src.replace('thumb', 'large');
    $("#largeImage").fadeOut(function() {
        this.src = src;
        $(this).fadeIn();
    });
});

使用我们的gravatars的Live example | source

(请注意,对于src,不需要通过attr;它是DOM元素上的reflected。)

票数 2
EN

Stack Overflow用户

发布于 2012-05-14 17:06:17

最简单的方法是使用现有的jQuery周期插件之一。其中@ malsup.com是一个很受欢迎的选择。

如果你想自己编写代码,你必须使用2个图像元素,并将一个元素放在另一个元素上,然后淡出顶部的一个元素。

您可以通过在<img />的父级上使用position: relative和在<img />上使用position: absolute; top: 0; left: 0;来完成此操作。将顶部图片淡出fadeOut()后,可以在回调中将其移除:

代码语言:javascript
复制
$('img_on_top').fadeOut('slow', function () {
    $(this).remove();
});
票数 1
EN

Stack Overflow用户

发布于 2012-05-14 17:06:37

代码语言:javascript
复制
$('#thumbs').delegate('img','click', function(){
    var src = $(this).attr('src').replace('thumb','large');
    $('#largeImage').fadeOut(100,function() {
      $(this).attr('src',src).fadeIn();
    });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10580308

复制
相关文章

相似问题

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