0

我发现了这个不错的 js 滑块,它通过单击单选按钮、选择要查看的幻灯片来工作。

我希望它自动播放幻灯片,并给它一个幻灯片和过渡的时间,但老实说,我不确定将这些值放在哪里。

我已经看到有关类似问题的其他问题,但找不到我的问题的正确答案。请帮忙?

<script type="text/javascript">
    $(document).ready(function () {

        var showCaseItems = $('.show-case-item').hide();

        var splashes = $('.splash').hide();
        //get each image for each slide and set it as a background of the slide
        //            splashes.each(function () {
        //                var img = $(this).find('img');
        //                var imgSrc = img.attr('src');
        //                img.css('visibility', 'hidden');
        //                $(this).css({ 'background-image': 'url(' + imgSrc + ')', 'background-repeat': 'no-repeat' });
        //            });

        splashes.eq(0).show();
        showCaseItems.eq(0).show();

        var prevIndex = -1;
        var nextIndex = 0;
        var currentIndex = 0;

        $('#banner-pagination li a').click(function () {

            nextIndex = parseInt($(this).attr('rel'));

            if (nextIndex != currentIndex) {
                $('#banner-pagination li a').html('<img src="assets/img/slidedot.png" alt="slide"/>');
                $(this).html('<img src="assets/img/slidedot-active.png" alt="slide"/>');
                currentIndex = nextIndex;
                if (prevIndex < 0) prevIndex = 0;

                splashes.eq(prevIndex).css({ opacity: 1 }).animate({ opacity: 0 }, 500, function () {
                    $(this).hide();
                });
                splashes.eq(nextIndex).show().css({ opacity: 0 }).animate({ opacity: 1 }, 500, function () { });

                showCaseItems.eq(prevIndex).css({ opacity: 1 }).animate({ opacity: 0 }, 500, function () {
                    $(this).hide();
                    showCaseItems.eq(nextIndex).show().css({ opacity: 0 }).animate({ opacity: 1 }, 200, function () { });
                });

                prevIndex = nextIndex;
            }

            return false;
        });

    });
</script>
4

3 回答 3

1

您可以使用 jquery 和 setTimeout

setTimeout(function() {$('#banner-pagination li a').trigger('click');}, 1500);

此代码将每 1.5 秒循环一次并触发点击#banner-pagination li a

于 2013-04-04T09:08:29.340 回答
0

您可以使用 jquery 触发事件并强行点击单选按钮单击事件

$('#foo').trigger('click');

http://api.jquery.com/trigger/

于 2013-04-04T10:05:14.947 回答
0
setInterval(function() 
  {$('#banner-pagination li a[rel='+((currentIndex+1)%3)+']').trigger('click');},5000);

谢谢

于 2013-08-16T09:16:57.043 回答