请帮忙。使手动幻灯片重复吗?

时间:2010-08-03 03:07:46

标签: javascript jquery duplicates

任何一个帮助请的网页是:

http://weblink.computersforpeople.info/users/1/properties/518/images/2869

如何让它重复,我的意思是当我点击最后一张照片上的下一个按钮时,它可以再次转到第一张照片。

之前已经问过,但仍然无法解决。有人可以帮忙吗。

非常感谢!!!

4 个答案:

答案 0 :(得分:2)

Neo在原始问题中的回答是正确的:

  

您可以设置数量   displaymode中的循环:{type:'auto',   暂停:2500,周期:[这里],   环绕:假},你也应该试试   改变持久性:尽管如此   记住最后查看的幻灯片和   回想一下。

查看当前页面,您没有实施其更改。尝试进行这些更改,发布当前代码并提供结果反馈。如果您将它们留在原地,我们可以查看并尝试并提供帮助。我猜,你有一个语法错误(如你之前的问题所示)。

此外:您不应删除已添加的“重复”标记,此问题显然与您之前的问题重复。

答案 1 :(得分:0)

试试这个脚本我希望它能为你提供更多帮助。

<script language="javascript">
    var imageShow = document.getElementById("imageShow"),
        imageIndex = 0,
        isSlidePlay = false,
        img = document.createElement("img"),
        opacity = 0,
        buttonPlay = document.getElementById("btnPlay"),
        buttonPrevious = document.getElementById("btnPrevious"),
        buttonNext = document.getElementById("btnNext"),
        imgs = [
            "images/1.jpg",
            "images/2.jpg",
            "images/3.jpg",
            "images/4.jpg",
            "images/5.jpg",
            "images/6.jpg",
            "images/7.jpg",
            "images/8.jpg",
            "images/9.jpg",
            "images/10.jpg"
        ];

    img.src = imgs[imageIndex];
    img.width = 300;
    img.height = 400;
    img.opacity = opacity;
    imageShow.appendChild(img);

    function fadeIn() {
        img.style.opacity = opacity;
         fadeInInterval = setInterval(
            function() {
                opacity += 1;
                img.style.opacity = opacity/10;
                if (opacity/10 == 1) {
                    fadeOut();      
                    clearInterval(fadeInInterval);                      
                }
            },
            100
        );
    }

    function fadeOut(){         
        img.style.opacity = opacity;
         fadeOutInterval = setInterval(
            function() {
                opacity -= 1;
                img.style.opacity = opacity/10;
                if (opacity == 0) {                 
                    if (imageIndex >= imgs.length) imageIndex = 0;
                    imageIndex++;
                    img.src = imgs[imageIndex];
                    fadeIn();                       
                    clearInterval(fadeOutInterval);
                }
            },
            100
        );
    }

    buttonPlay.addEventListener("click", 
        function(){
            if(!isSlidePlay){
                buttonPlay.value="||";
                fadeIn();
                isSlidePlay = true;
                buttonNext.disabled = true;
            }
            else {
                buttonPlay.value = "Play";
                isSlidePlay = false;
                buttonNext.disabled = false;
                clearInterval(fadeInInterval);
                clearInterval(fadeOutInterval);
                img.src = imgs[imageIndex];
            }

        }, 
        false
    );

    buttonNext.addEventListener("click",
            function(){
                buttonPrevious.disabled = false;
                imageIndex++;
                img.src = imgs[imageIndex];
                if (imageIndex >= imgs.length) buttonNext.disabled = true;
            },
        false
    );

    buttonPrevious.addEventListener("click",
        function(){
            buttonNext.disabled = false;
            imageIndex--;
            img.src = imgs[imageIndex];
            if (imageIndex <= 0) buttonPrevious.disabled = true;
        },
        false
    );
</script>

注意:您可以自己创建按钮。

答案 2 :(得分:0)

只需将false更改为true即可。 displaymode: {type:'manual', pause:2500, cycles:0, wraparound:false}

答案 3 :(得分:0)

当你调用你的javascript“load()”函数时,你的页面抬头会在你的body标签的“onload”属性中抛出一个javascript错误。我会先纠正这一点。此外,IE8有一个很棒的内置JavaScript调试器,或者你可以获得Firefox的Firebug插件,它也做得很好。在追踪javascript错误时有很多帮助。