首页 > 代码库 > 由<a>标签的onclick影出来的问题

由<a>标签的onclick影出来的问题

今天做了一个 通过 document.getElementByName()的方法获得一个标签a的集合。tag_a=window.docu.....

接着需要给每个标签都加一个onclick事件。

for(i in tag_a){

  tag_a[i].onclick=function (){

    alert(tag_a[i].title);

  }

}

结果发现没有任何反应。卡在这里卡了很久,结果在贴吧上通过大神指点,原来是个小毛病,因为这里onclick的实现是通过

匿名内部类,匿名内部类里 alert(tag_a[i].title 的i 是无法读取的,因此,为了获取各个标签a的title。将这里改成

alert(this.title)即可。

总结:匿名内部类里不能有外部变量,如果要访问当前节点,则需要通过this关键字。