javascript - JS : Set animation duration for change of src

标签 javascript jquery

我正在使用此脚本来更改点击功能上的 img

    var fstSrc = 'img/1.jpg';
    var sndSrc = 'img/2.jpg';
    var trdSrc = 'img/3.jpg';
    $(".aktualita1").click(function () {
        $('img[src="' + sndSrc + '"]').attr('src', fstSrc);
        $('img[src="' + trdSrc + '"]').attr('src', fstSrc);
    });

当然,当点击时,图像立即改变。我如何为这次点击设置 0.5 秒的持续时间,以便图像会随着漂亮的淡入淡出动画而变化? :)谢谢!

最佳答案

您可以fadeOut更改图像的src,然后fadeIn为您提供所需的效果。

var fstSrc = 'img/1.jpg';
var sndSrc = 'img/2.jpg';
var trdSrc = 'img/3.jpg';
$(".aktualita1").click(function () {
    $('img[src="' + sndSrc + '"], img[src="' + trdSrc + '"]').fadeOut(250, function(){
        $(this).attr('src', fstSrc);
    }).fadeIn(250)
});

如果您希望图像在另一图像之上淡出,请考虑在该图像之上使用另一个图像元素(反之亦然)。

例如:

var fstSrc = 'https://i.imgur.com/EUym7Pw.jpg';
var sndSrc = 'https://i.imgur.com/Xt8ICog.jpg';
var trdSrc = 'https://i.imgur.com/Fp2EwFc.jpg';
$(".aktualita1").click(function() {
  $('img[src="' + sndSrc + '"], img[src="' + trdSrc + '"]').each(function() {
    if ($(this).is(':visible')) {
      var pos = $(this).position();
      $(this).parent().append($('<img src="' + fstSrc + '">').css({
        position: 'absolute',
        left: pos.left,
        top: pos.top,
        display: 'none'
      }).fadeIn(500));
      $(this).fadeOut(500);
    }
  })
});
.aktualita1 {
  position: relative;
}
.aktualita1 img {
  height: 200px;
  width: 200px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="aktualita1">
  <img src="https://i.imgur.com/Xt8ICog.jpg">
  <img src="https://i.imgur.com/Fp2EwFc.jpg">
</div>

关于javascript - JS : Set animation duration for change of src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36699563/

相关文章:

javascript - 使用 jQuery 预加载图像,这样就不会闪烁

php - 从 JavaScript 回显 PHP 变量?

php - 单击文件链接时仅保存选项

Javascript - 使用字符串构造对象属性

javascript - AngularJs,ng-if 更改文本?

javascript - 如何在 PHP 中检测数据库事件时创建 Web 通知

Jquery 表单提交不起作用?

javascript - 未捕获的类型错误 : Cannot read property 'msie' of undefined

javascript - jquery animate Complete 函数在动画完成之前执行

javascript - 使用 jquery/isotope 类调用/链接 wordpress 类别