2012-06-03 83 views
0

我試圖找出一種方法來改變與被用JavaScript改變圖像伴隨而來的文字...變化圖片和標題

var x = 0; 
var images = new Array(".jpg", ".jpg", ".jpg", ".jpg", ".jpg"); 
var i = setInterval(auto, 10000); 

function auto() { 
    x++; 
    if (x == images.length) x = 0; 
    document.getElementById('bigImage').src = images[x]; 
} 

function changeImage(img, imagetitle) { 
    document.getElementById('bigImage').src = img; 
    /* document.getElementById('mainimagetitle').innerHtml = imagetitle; */ 
}​​​ 

註釋的部分是我怎麼想我可能改變圖像附帶的文字。我如何編碼的HTML。我應該使用id爲mainimagetitle嗎? 如果是這樣,我在哪裏以及如何添加我想要顯示和隱藏的不同文本?

+2

請提供您的html代碼,以便我們確定適合您的javascript。 – Wirone

+0

'mainimagetitle'是什麼樣的元素?請嘗試在[jsfiddle](http://jsfiddle.net)中重現您的案例。 –

+0

@VisioN爲什麼編輯? –

回答

0

正如我從你的貼子看到的,這應該做的工作。

<img id="bigImage" src="img1.jpg" alt="" /> 
<div id="mainimagetitle"></div> 

一定要添加(填充)src標記,否則在IE中會得到奇怪的結果。當你從第二個圖像(改變之前的x ++)開始時,這將是沒有問題的。我覺得很幸福的事故。 ;-)

//編輯:當然,只要您使用正確的ID,任何元素都會執行。但是你沒有告訴我們你使用什麼html(xhtml/html5/...)。

0

你可能有存儲字幕針對每幅圖像

var captions = ['Caption 1', 'Caption 2', ...]; 

假設mainimagetitle的另一個數組是<p>元素的ID,你可以這樣做:

function changeImage(img, imagetitle) { 
    document.getElementById('bigImage').src = img; 
    document.getElementById('mainimagetitle').innerText = imagetitle; 
}​​​ 

你可以根據您的代碼here查看完整示例。