【问题标题】:Restart GIF Image from starting after some time of stop停止一段时间后重新启动 GIF 图像
【发布时间】:2016-09-22 19:11:54
【问题描述】:

我已经设置了 GIF 图像并且它工作正常,但是我有一个关于它的查询,那就是我如何在一段时间后重新启动该 GIF 图像而不刷新页面。

我搜索了很多,但任何解决方案都不适合我。

我设置了如下代码:

<script type="text/javascript">
        jQuery('document').ready(function(){
            function func() {
                //alert('Here');
                var d = new Date();
                var img = new Image();
                img.src = 'http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif';
                jQuery("#gifimg").attr("src", img.src + '?s=' + d.getTime());
                timer = setTimeout(func, 30000)
            }
            var timer = setTimeout(func, 30000)
            /*setInterval(function(){
                //alert('hy');
                var d = new Date();
               // var img_path = 'http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif?' + d.getTime();
               var img = new Image();
               img.src = 'http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif';
               jQuery("#gifimg").attr("src", img.src + '?s=' + d.getTime());
            },32000);*/
        });
</script>

但它睡得不好。

任何帮助将不胜感激并等待正确答案。

你可以在这里看到这个:Link

【问题讨论】:

  • 如果您总是想在 30 秒后“重新启动”它,那么最简单的解决方案可能是首先在 GIF 中实现它,使其重复其动画。 / “重新启动”一个 GIF 动画跨浏览器并不是最简单的事情;现在大多数处理动画 GIF 的大型网站都将它们转换为视频是有充分理由的——这些更容易控制。

标签: javascript jquery gif


【解决方案1】:

尝试替换src,然后重新放置原件。这是一个例子。 运行 sn-p 并告诉我这是否适合您。

我已经使用按钮刷新图像,您可以根据自己的情况使用。

function test1(){
jQuery('#myimg').attr('src','placeholder.png');
jQuery('#myimg').attr('src','http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif');
}
#myimg{
  width:300px;
  height:300px;
  border:0px none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<button onclick="test1();">
refresh image
</button>
<img id="myimg" src="http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif" alt="dgfdgdf gfd gdfg fdsg dfs gdfsgdfsgdfg" />

【讨论】:

    【解决方案2】:

    您需要使用setInterval 而不是setTimeout

    function func() {
      var d = new Date();
      var img = new Image();
      img.src = 'http://www.goldenswange.com/wp-content/uploads/2016/05/stoptyre.gif';
      jQuery("#gifimg").attr("src", img.src + '?s=' + d.getTime());
    }
    var timer = setInterval(func, 30000);
    

    【讨论】:

      猜你喜欢
      • 2019-10-26
      • 1970-01-01
      • 2022-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-27
      • 1970-01-01
      • 2018-08-06
      相关资源
      最近更新 更多