我有一个指向图像的链接列表,以及一个 js 函数,它接受一个(图像的)URL,并在调用该函数时将该图像放在页面上。
我最初是为每个 a 添加一个内联 onlick="showPic(this.getAttribute('href'))" ,但我想分离出内联 js。这是我在页面加载时为每个标签添加 onclick 的函数:
function prepareLinks(){
var links = document.getElementsByTagName('a');
for(var i=0; i<links.length; i++){
var thisLink = links[i];
var source = thisLink.getAttribute('href');
if(thisLink.getAttribute('class') == 'imgLink'){
thisLink.onclick = function(){
showPic(source);
return false;
}
}
}
}
function showPic(source){
var placeholder = document.getElementById('placeholder');
placeholder.setAttribute('src',source);
}
window.onload = prepareLinks();
...但每次调用 showPic 时,源变量都是最后一张图像的 href。我怎样才能让每个链接都有正确的点击?