图像滑块使用eq()来获取尝试将图像更改为图像变量的图像

时间:2013-07-29 23:27:17

标签: jquery

我正在尝试使用此图像滑块从文件夹位置获取图像,而不是使用.eq()来获取图像,但我无法弄清楚如何做到这一点。

var pages = $('#container li'),
    current = 0;
var currentPage, nextPage;
var get_images = new Array("1.jpg", "2.jpg");
var handler = function () {
    $('#container .button').unbind('click');
    currentPage = pages.eq(current);
    if ($(this).hasClass('prevButton')) {
        if (current <= 0) current = pages.length - 1;
        else current = current - 1;
        nextPage = pages.eq(current);

        nextPage.css("marginLeft", -604);
        nextPage.show();
        nextPage.animate({
            marginLeft: 0
        }, 800, function () {
            currentPage.hide();
        });
        currentPage.animate({
            marginLeft: 604
        }, 800, function () {
            $('#container .button').bind('click', handler);
        });
    } else {

        if (current >= pages.length - 1) current = 0;
        else current = current + 1;
        nextPage = pages.eq(current);

        nextPage.css("marginLeft", 604);
        nextPage.show();
        nextPage.animate({
            marginLeft: 0
        }, 800, function () {});
        currentPage.animate({
            marginLeft: -604
        }, 800, function () {
            currentPage.hide();
            $('#container .button').bind('click', handler);
        });
    }
}

$('#container .button').click(handler);

1 个答案:

答案 0 :(得分:1)

这比仅更换.eq()的实例更困难,因为它正在使用我们可以使用.css().animate()的DOM元素,因为它们已经在DOM。

我认为最好只做

$.each(get_images, function(i,img){
    $('#container').append('<li><img src="'+img+'"/></li>');
});

然后调用所有其他代码。

修改

Here's a jsFiddle with my adaptation of your code

我只是使用bootstrap和随机缩略图生成器,在代码中不要注意它。关注get_images变量和$.each()函数