1

我有一系列想要展示的文章。我希望能够单击下一个箭头移动到下一篇文章,或者点击上一个箭头移动到上一篇文章。当我到达数组中的最后一项时,我想隐藏下一个箭头,反之亦然。

$(function () {

    var i = 0


    $(multibubbles[i]).appendTo('#page');
    $(multibubbles[i]).children('#next-arrow').show();

        $(multibubbles[i]).children('#next-arrow').click(function (e) {
            $(multibubbles[i]).hide();
            i++;
            $(multibubbles[i]).appendTo('#page');
            if (i == multibubbles.length - 1) {
                $(multibubbles[i]).children('#next-arrow').hide();
            }
            else {
                $(multibubbles[i]).children('#next-arrow').show();
            }
            $(multibubbles[i]).children('#prev-arrow').show();
        })

        $(multibubbles[i]).children('#prev-arrow').click(function (e) {
            $(multibubbles[i]).hide();
            i--
            $(multibubbles[i]).appendTo('#page');
            if (i == 0) {
                $(multibubbles[i]).children('#prev-arrow').hide();
            }
            else {
                $(multibubbles[i]).children('#prev-arrow').show();
            }
            $(multibubbles[i]).children('#next-arrow').show();
        })
})

当我第一次单击箭头时,它会很好地转到下一篇文章,但是如果我再次单击它,它什么也不做,因为我无法让它退出第一次单击功能。我尝试使用'return',但这也不起作用。请帮我。

4

1 回答 1

0

我假设您只有一个“下一页”元素和一个“上一页”元素。在这种情况下,不需要为此使用数组“multibubbles”。我假设“multibubbles”可以设置为字符串值数组。由于您的“下一个箭头”元素可能开始可见,因此无需使用“show()”。如果您希望使其不可见,只需更改 id '#next-arrow' 的 css 显示。此外,将“#prev-arrow”设置为最初隐藏在 css 中。

$(document).ready(function() {
    multibubbles[1] = 'blah blah';
    multibubbles[2] = 'blah blah';
    ...

    var numarticles = multibubbles.length;
    var i=0;
    $('#next-arrow').click(function () {
        i++;
        if (i == (numarticles-1)) {
            $('multibubbles[i]').show();
            $('#next-arrow').hide();
            i = numarticles-1;
        }
        $('#prev-arrow').show();
    });

    $('#prev-arrow').click(function () {
        i--;
        if (i == 0) {
            $(multibubbles[i]).show();
            $(#prev-arrow).hide();
            i=0;
        }
        $('#next-arrow').show();
    });
});
于 2013-09-06T22:17:20.833 回答