在不同时间为每个图像设置间隔

时间:2013-08-02 18:52:14

标签: javascript jquery html slideshow setinterval

我有一个简单的jquery幻灯片。我需要知道如何为每个图像单独更改间隔时间

我只希望第一张图片为“9000”,其余图片为“3000”

<script>
$(function(){
$('.fadein img:gt(0)').hide();
setInterval(function(){$('.fadein :first-child').fadeOut(2500).next('img').fadeIn(2500).end().appendTo('.fadein');}, 9000);});
</script>

<div class="fadein" >
<img src="1.jpg">
<img src="2.jpg">
<img src="3.jpg">
<img src="4.jpg"></div>

2 个答案:

答案 0 :(得分:2)

只需设置9000的超时,然后将间隔设置为3000:

$(function(){
    function fade() {
        $('.fadein :first-child').fadeOut(2500).next('img').fadeIn(2500).end().appendTo('.fadein');
    }
    setTimeout(function() {
        fade();
        setInterval(fade, 3000);
    }, 9000);
});

答案 1 :(得分:1)

这可能就是你要找的东西。它至少会给你一些玩法。

http://jsfiddle.net/BjornJohnson/42b8X/

您可以将所需的持续时间设置为数据属性,脚本使用这些属性来设置setTimeout的延迟。

像:

<div id="x">
    <img class="active" data-timeout="3000" src="https://si0.twimg.com/profile_images/2644394397/748dd7e11df8dbb93f0fcf2abc141526.png" />
    <img data-timeout="1500" src="https://si0.twimg.com/profile_images/3379531545/ce1eed2263515e4a173dffc815e1a6fc.jpeg" />
    <img data-timeout="5000" src="https://si0.twimg.com/profile_images/3632836331/6e3f4995bd41d49b724e13e694eb1a2d.jpeg" />
    <img data-timeout="2000" src="https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcQb09ZMKsDuY5lko2JNEfnXb8_8HTfedS9Uuk_7fdcTGoH5Ps-Xxg" />
</div>