為什么將this改成as[i]就不能正常運行,this指代的不就是as[i]嗎??
for(var i=0;i<as.length;i++){
? ? ? ? ? ? ? ? as[i].onmouseover=function(){
? ? ? ? ? ? ? ? ? ? this.style.backgroundColor='#567';
? ? ? ? ? ? ? ? };
? ? ? ? ? ? ? ? as[i].onmouseout=function () {
? ? ? ? ? ? ? ? ? ? this.style.backgroundColor='#FFF';
? ? ? ? ? ? ? ? };
? ? ? ? ? ? ? ? as[i].onclick=function () {
? ? ? ? ? ? ? ? ? ? asCon=this.innerHTML;
? ? ? ? ? ? ? ? ? ? title.innerHTML=asCon;
? ? ? ? ? ? ? ? ? ? menu.style.display='none';
? ? ? ? ? ? ? ? };
為什么將加粗的this改成as[i]就不能正常運行,this指代的不就是as[i]嗎??
2016-12-15
如果你非要用as[i]這種格式,可以這樣寫?
這樣閉包函數(shù)就可以訪問外部變量了,給你也網(wǎng)址里面有一點介紹,http://www.jb51.net/article/54397.htm
2016-12-15
你把this改成as[i],可以打開控制的,輸出錯誤的原因是:TypeError: as[i] is undefined,as[i]沒有定義,意思就是匿名函數(shù)無法訪問as數(shù)組。