在这段代码中,我应该将翻转效果绑定到元素<area>
中的每个标签<map>
。
function initLinks(webrt) {
var areas = document.querySelectorAll("map#streetmap > area");
var links = new Array(areas.length);
for (var i=0; i<links.length; i++) {
links[i] = new Image(786,272);
links[i].src = webrt+"templates/default/sketches/links"+(i+1)+".png";
areas[i].onmouseover=function(){switchLinkImg(webrt+"templates/default/sketches/links"+(i+1)+".png");};
areas[i].onmouseout=function(){switchLinkImg(webrt+"templates/default/sketches/links.png");};
}
}
奇怪的是,每个<area>
onmouseover 事件都会尝试加载不存在的图像:/templates/default/sketches/links6.png
. 为什么它将这个i
递增到 6 的变量保留为全局变量,而不是将我传递给函数的字符串?
我该如何解决?
注意:没有 jQuery!