2015-11-05 34 views
-1

我有一個腳本,使得這使得XML文件中的每個項目的瓷磚。該貼圖是由javascript創建的「a」標籤內的div。添加onclick到鏈接使用javascript的困難

document.getElementById('Body').appendChild(tileLink); 
tileLink.appendChild(tile); 
tile.appendChild(tileTitle); 
tile.appendChild(tileImg); 
document.write(" "); 

所以當tileLink被點擊時,必須加載一個JavaScript函數「showDiv(divId)」。 divId是加載函數所需的腳本中的變量。 我試過這兩行,但是兩個腳本都不起作用,也沒有加載對象。

tileLink.onclick = showDiv(divId); 
textLink.addEventListener("click", showDiv(divId)); 

我在哪裏錯了?

+1

你可以讓一個jsfiddle或顯示所有的代碼? HTML和JS。 – AtheistP3ace

+0

請注意複製件上接受答案的後半部分。如果有人有更好的親密候選人,請讓我知道(必須有一個),以便我可以喜歡它,並在未來使用它。 –

+0

https://jsfiddle.net/#&togetherjs=xBu2CEebSb –

回答

3

事件處理程序需要函數引用。通過調用該函數,您立即執行它。

textLink.addEventListener("click", function() { 
    showDiv(divId); 
}); 
+0

也無法工作... –

+0

如果我這樣做,只顯示最後一項 –

+1

那麼你需要調整它以適應項目列表 - 哪不是你問題的一部分。 –