如何定位下一个要显示的图像?

时间:2014-01-15 10:35:43

标签: javascript jquery html css

我有一个图库,可以显示图像,还需要导航到下一个和上一个图像。我真的不知道如何让它们发挥作用。

我的工作结构在this fiddle

我需要让它工作,以便当我点击next时,它会打开下一张图片,当我按下prev时,它会打开上一张图片。

1 个答案:

答案 0 :(得分:1)

我认为您应该做的是将“.selected”类应用于当前视图中的图像。

单击下一步,将所选类转移到下一个元素,如下所示:

$( '选择 ')removeClass(' 选择 ')下()addClass(' 选择');。。。

这样,您可以准确跟踪一个元素,并可以显示该元素。

在你的getNext函数中,x.length === 0,它是空的,因为它试图在'this'中找到'.popup_img','this'是被点击的按钮

function getNext(){         调试器;         var x = jQuery(this).find('。popup_img');         jQuery的( 'popup_img')隐藏();
        jQuery的( 'popup_img。 ')下一个(' popup_img。')示出了();

    console.log(x);
}

编辑:

这里有改进的next和prev函数:

 function getNext() {
    var parent = jQuery(this).closest('.gallery-box-file');
    var currentImg = parent.find('.popup_img');
    var nextParent = parent.next();

    if (nextParent.length) {
        currentImg.hide();
        nextParent.find('.popup_img').show();
    }
}

   function getPrev() {
    var parent = jQuery(this).closest('.gallery-box-file');
    var currentImg = parent.find('.popup_img');
    var nextParent = parent.prev();

    if (nextParent.length) {
        currentImg.hide();
        nextParent.find('.popup_img').show();
    }
}

http://jsfiddle.net/6Q4Va/5/