2014-06-20 68 views
-1

該腳本將循環顯示圖像,但我無法弄清楚如何讓它識別與每個圖像關聯的鏈接。我以爲我可以使用相同的計數器「我」來移動鏈接數組,但它不起作用。Javascript幻燈片添加鏈接

var images = [ 
"Image1.jpg", 
"Image2.jpg", 
"Image3.jpg" 
]; 

var weblinks = [ 
"http://google.com", 
"http://yahoo.com", 
"http://dell.com" 
]; 
var num = images.length; 
var i = 0; 
var t; 

function play() { 
if(typeof t === 'undefined') { 
    t = setInterval(next, 2000); 
} 
} 

function Stop() { 
if(t) clearInterval(t); 
} 

function next() { 
if(++i >= num) i = 0; 
document.getElementById('img').src = images[i]; 
document.getElementById('link').src = webLinks[i]; 

} 

function previous() { 
if(--i < 0) i = num-1; 
document.getElementById('img').src = images[i]; 
document.getElementById('link').src = webLinks[i]; 

} 

window.onload = function() { 
document.getElementById('img').src = images[0]; 
document.getElementById('link').src = webLinks[0]; 
a.href=link[i]; 

} 

的HTML

<table width="50%" border="0" cellspacing="10" cellpadding top="0" align="center"> 
<tr> 
<td><input type="button" value="Back" onclick="previous()"/></td> 
<td align="center"><a id="link" href="#" target="_self"><img src="Image1.jpg" alt="" id="img"/></a></td> 
<td><input type="button" value="Next" onclick="next()"/></td> 
</tr> 
<tr> 
<td colspan="3" align="center" height="50"><input type="button" value="Play" onclick="play()" /> 
    <input type="button" value="Stop" onclick="Stop()" /></td> 
</tr> 
</table> 

回答

1

更換document.getElementById('link').srcdocument.getElementById('link').href - 你改變鏈接的錯誤屬性。

編輯:也改變var weblinksvar webLinks - JavaScript區分大小寫。 並刪除a.href=link[i];,它不會做任何事情(因爲a沒有定義,也不是鏈接)。

+0

嗯,這是有道理的,改變它,但它仍然無法正常工作。 – user3750718

+0

還有第二個錯誤 - 我編輯了我的答案,其中包含修復程序 – user1993963

+0

/facepalm。謝謝。它現在工作正常,儘管IE聲稱它呈現錯誤的頁面。 – user3750718