<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好久不混水源了

解决方案 »

  1.   

    刚才的代码被csdn处理了,加个格式
    <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> 
      

  2.   

    把window.open(o.src, ' ', ' ')}换成window.open(this.src,"","")就行了,因为你那种定法o不会作为变量直接传入,而是后来调用时才执行o这个全局变量。还有这种document.getElementById( 'my ').all写法最好换成document.getElementById('my').getElementsByTagName('img')