我制作了一个图片库,您可以在其中单击图片以显示更大的版本。单击图像时,将在下面的行中插入新图像。我遇到了一个错误,我不知道如何解决它。例如,如果您单击第一行的图像,则会显示图像的预览。然后,如果您单击下面两行的图像,则不会显示图像预览。它不适用于 Chrome 和 Safari。在 Firefox 中效果很好。
这是我使用的 Javascript 和 jQuery(2.0.3):
$(document).on("click", ".imgBox", function(){
imgsrc = $(this).find('img').attr('src');
var bigBox = $('<div class="bigBox"><img src="'+imgsrc+'"/></div>');
imgClicked = $(this);
$('.bigBox').remove()
if ($(".bigBox").length > 0){
bigBox.find('img').attr('src', imgsrc);
bigBox.insertAfter(imgClicked);
} else {
bigBox.insertAfter(imgClicked).css('display', 'block');
}
});
我创建了一个JSFiddle,以便您可以自己尝试。只需确保调整浏览器窗口的大小,以便获得至少 3 行。
我已经在 OSX 上的 Chrome 30.0.1599.101、Safari 6.0.5 和 Firefox 24.0 中对其进行了测试。