首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向此jquery函数添加延迟

问向此jquery函数添加延迟
EN

Stack Overflow用户
提问于 2014-02-07 07:26:37
回答 2查看 320关注 0票数 1

我正在使用jquery来交换一个img src。有没有办法添加淡入淡出效果,使图像淡入淡出而不是直接的即时交换?

干杯

代码语言:javascript
复制
<img class="imgswap" data-alt-src="img1.jpg" src="img2.jpg" />
var sourceSwap = function () {
    var $this = $(this);
    var newSource = $this.data('alt-src');
    $this.data('alt-src', $this.attr('src'));
    $this.attr('src', newSource);
}

$(function () {
    $('img.imgswap').hover(sourceSwap, sourceSwap);
});
EN

回答 2

Stack Overflow用户

发布于 2014-02-07 07:29:46

您可以使用以下函数:

代码语言:javascript
复制
.mouseover(function() { 
    $(this).fadeOut(function(){
        //do the swapping
        $(this).fadeIn();
    });
})
票数 2
EN

Stack Overflow用户

发布于 2014-02-07 07:35:43

代码语言:javascript
复制
<img class="imgswap" data-alt-src="img1.jpg" src="img2.jpg" />

var sourceSwap = function () {
    var newSource = $(this).data('alt-src');

    $(this).fadeOut(function(){
        $(this).data('alt-src', $(this).attr('src'));
        $(this).attr('src', newSource);

        $(this).fadeIn();
    });
}

$(function () {
    $('img.imgswap').mouseover(sourceSwap);
});

但我不确定,这是否在该函数的正确上下文中。

更新: http://jsfiddle.net/dehisok/X8ycM/1/

修复“真正快速悬停”的方法在这里。

代码语言:javascript
复制
if ($(this).hasClass('processing')) {
    return;
}

$(this).addClass('processing');

最后:

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

https://stackoverflow.com/questions/21616292

复制
相关文章

相似问题

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