我已經花了整整一天的時間,並且明天需要它,所以我懷疑我今晚會有任何睡眠,但如果有人能解決這個問題,我會非常感激,因爲它是讓我發瘋。無法通過圖像返回陣列
我已經嘗試了很多方法,但是這是代碼: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(方向)」,這似乎從來沒有工作,這一個:
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;
}
}
}
第二個讓我使用的下一個按鈕,但如果我試圖扭轉它前面的按鈕那麼它不起作用。我只想點擊圖片,然後隱藏圖片並點擊另一張圖片,效果完全相同。我建議下載代碼並自己嘗試一下。
謝謝!
謝謝。我一直在做這個changeImage(),今天已經有8個小時了,我已經放棄了。我不確定我是否可以做到。將不得不明天嘗試。將繼續嘗試,但另外10個小時左右大聲笑 – Mayron