我花了一整天的时间在这上面,明天需要完成,所以我怀疑今晚我会睡不着觉,但如果有人能解决这个问题,我将非常感激,因为它让我发疯。
我尝试了很多方法,但这是代码:http ://www.mediafire.com/download/xibb998x4yg5avc/Image_JavaScript_Array_help!.zip
这是一张照片:http: //i.imgur.com/NgQk5P2.jpg
基本上我有一张图片表:
<td><a href="#zoomedIn"><img id="0" onclick="showLarge(this);" src="Media//Gallery//img_1.png" alt="Gallery Image 1" /></a></td>
<td><a href="#zoomedIn"><img id="1" onclick="showLarge(this);" src="Media//Gallery//img_2.png" alt="Gallery Image 2" /></a></td>
<td><a href="#zoomedIn"><img id="2" onclick="showLarge(this);" src="Media//Gallery//img_3.png" alt="Gallery Image 3" /></a></td>
<td><a href="#zoomedIn"><img id="3" onclick="showLarge(this);" src="Media//Gallery//img_4.png" alt="Gallery Image 4" /></a></td>
<td><a href="#zoomedIn"><img id="4" onclick="showLarge(this);" src="Media//Gallery//img_5.png" alt="Gallery Image 5" /></a></td>
并且 "showLarge(this); 事件处理程序将调用此函数:
function showLarge(img) {
var largeFrame = document.getElementById("zoomedIn");
largeFrame.style.visibility = 'visible';
var largeImage = document.getElementById("largeImage");
largeImage.src = img.src;
findIndex(img.src);
}
function findIndex(src) {
for (var i = 0; i = imgArray.length; i++)
if (imgArray[i].src == src) {
currentImage = i;
}
}
这样做是为了当您单击其中一个较小的图像时,如图片背景所示,它将打开一个框架,并为大图像框架提供小图像源,因此小图像显得更大。
然而,不起作用的部分是有两个按钮:一个是下一个按钮,另一个是上一个按钮。我尝试了两种方法:似乎永远不会起作用的“changeImage(direction)”和这个:
function nextImage(event) {
var img = document.getElementById("largeImage");
for(var i = 0; i < imgArray.length;i++)
{
if(imgArray[i].src == img.src)
{
if(i === imgArray.length){
img.src = imgArray[0].src;
break;
}
img.src = imgArray[i+1].src;
break;
}
}
}
第二个允许我使用下一个按钮,但如果我尝试为上一个按钮反转它,那么它不起作用。我只是希望能够单击图像,然后隐藏图像并单击另一个图像,它的工作原理完全相同。我建议下载代码并自己尝试一下。
谢谢!