首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

请教声明后的元素对象,为什么清空对象以后,回调函数依然有效

2013-03-19 
请问声明后的元素对象,为什么清空对象以后,回调函数依然有效?div idBtn001 stylebackground:red wi

请问声明后的元素对象,为什么清空对象以后,回调函数依然有效?

<div id="Btn001" style="background:red; width:100px; height:100px" /></body>



var el=document.getElementById("Btn001");
el.onclick=function(){
  alert(123)
}
el=null
alert(el)


我以为我把el清空,回调函数没有被引用了,会被垃圾回收,可为什么每次点击div,依然可以弹出123来?
[解决办法]
引用:
var el=document.getElementById("Btn001"); 
el=document.getElementById("Btn001"); 
el=document.getElementById("Btn001"); 

还想问一下, 如果有三个这样的语句,是不是会有三个document.getElementById("Btn001"),Do……

dom是挂在dom树上的,那几个只是引用了dom对象。
[解决办法]
引用:
你清空的是 el
不是那个dom


比如 你看到了 星星  现在你闭上眼睛 那么 星星确实还是存在


这星星是不是不管怎么折腾都始终是一颗啊?

热点排行