日期:2014-05-16  浏览次数:20508 次

两个图片,点击后,分别在另一个窗打开。 为什么,无论点击哪个图都打开的是第2个图片呢???
两个图片,点击后,分别在另一个窗打开。 为什么,无论点击哪个图都打开的是第2个图片呢???

<div id=my>
<IMG src="1.jpg">
<IMG src="2.jpg">
</div>
<script>
var es = document.getElementById('my').all;
for(var i=0; i<es.length;i++)
{
if(es[i].tagName=="IMG")
{
var o = es[i];
o.onclick=function(){window.open(o.src,'','')};
}
}

</script>

------解决方案--------------------
<div id=my> 
<IMG src= "1.jpg">
<IMG src= "2.jpg"> 
</div> 
<script> 
var es=document.getElementById('my').all;
for(var i=0; i <es.length;i++) 

if(es[i].tagName== "IMG")
{
o.onclick=function(){window.open(this.src)};} 


</script>

主要是因为onclick事件执行的时候才调用你的代码,所以每次都会去找 o.src,这时候o指的是my里面的最后一个图片对象

ps:lz好久不混水源了