第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

報錯,請教問題出在哪里

報錯,請教問題出在哪里

window.onload=function(){??? for(var i=0;i<play.length;i++){??? play[i].onmouseover=function(){play[i].style.backgroundColor="blue";}?? ?};?? ?}問題描述: play[i] is undefined? ?????????? play已經(jīng)定義,將function里面的play[i]改成this沒有出錯,想知道play[i]為什么不對
查看完整描述

2 回答

已采納
?
xuchaoi

TA貢獻4條經(jīng)驗 獲得超5個贊

首先,外層的for循環(huán)只是為每個play對象綁定一個鼠標事件。而最后面的匿名函數(shù)并沒有執(zhí)行,當鼠標碰到某個play對象時才會觸發(fā)這個匿名函數(shù)。此時,for循環(huán)其實已經(jīng)執(zhí)行完了,那么i的值就是play.length,如果代碼里寫的是play[i],那么play[play.length]當然是underfined了,數(shù)組最后的一個元素的i值應(yīng)該是play.length-1。(這里用play[i]的邏輯也不對)

查看完整回答
5 反對 回復 2016-11-10
?
mfkayuff

TA貢獻28條經(jīng)驗 獲得超15個贊

徐超同學說的很好呀,簡單點,你可以在onmoueover里把 i 打印出來,你就會更理解徐超同學的話了

查看完整回答
反對 回復 2016-11-10
?
慕前端8664132

TA貢獻20條經(jīng)驗 獲得超0個贊

把后面那個play[i]換成this


查看完整回答
反對 回復 2016-11-10
?
高jay

TA貢獻96條經(jīng)驗 獲得超122個贊

看到樓上的回答我也是醉了,這明顯是閉包引起的,for循環(huán)創(chuàng)建了閉包,在后面一個函數(shù)里只能取到最后一個i的值所以用this取到的是當前play[i]的值,而里面如果用play[i]的話跟前面的play[i]就不是同一個東西了。止于為什么是報undefined而不是返回play:last的值我也是納悶。
查看完整回答
反對 回復 2016-11-09
?
我愛吃冰激凌

TA貢獻1條經(jīng)驗 獲得超0個贊

沒有定義play吧

查看完整回答
反對 回復 2016-11-09
?
摩訶迦葉

TA貢獻146條經(jīng)驗 獲得超54個贊


他不知道play[i]是什么東西 ,你代碼不全呀,從哪復制過來漏了吧

查看完整回答
1 反對 回復 2016-11-09
  • weibo_一光年_sunshi_03642119
    weibo_一光年_sunshi_03642119
    剛打漏了一行字,現(xiàn)在全了
  • 摩訶迦葉
    摩訶迦葉
    你還是把你完整代碼貼出來吧,你這樣誰看的出來問題是什么
  • weibo_一光年_sunshi_03642119
    weibo_一光年_sunshi_03642119
    全部代碼太長了 這部分就是 var play=document.getElementsByClassName("play"); window.onload=function(){ for(var i=0;i<play.length;i++){ play[i].onmouseover=function(){this.style.backgroundColor="blue";} } }
點擊展開后面1
  • 2 回答
  • 1 關(guān)注
  • 2216 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號