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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

為什么要把對(duì)addEvent函數(shù)的調(diào)用寫(xiě)在window.onload=function(){}里面

為什么要把a(bǔ)ddEvent(login_btn,'click',showLogin);和addEvent(close,'click',hideLogin);寫(xiě)在window.onload=function(){}里面,寫(xiě)在外面不行嗎?如果可以,要怎樣寫(xiě)呢?

正在回答

4 回答

我也是想問(wèn)這個(gè)問(wèn)題,開(kāi)始我想的是可能沒(méi)有讀取到body下面的id,所以不行,因?yàn)閣indow.onload是頁(yè)面加載完了才開(kāi)始執(zhí)行js代碼,但是后來(lái)我把js代碼寫(xiě)在body最下面,把a(bǔ)ddEvent寫(xiě)在外面還是不行...哎我也在到處求問(wèn)

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

隨性隨意

就是因?yàn)闀?huì)出現(xiàn)一些莫名奇妙的問(wèn)題,所以建議還是寫(xiě)在onload里面。你可以找一些書(shū),看看有沒(méi)有什么解釋。
2016-04-05 回復(fù) 有任何疑惑可以回復(fù)我~

通常情況下,js寫(xiě)在文檔末尾,即</body>后面,因?yàn)閖s的加載會(huì)使靜態(tài)頁(yè)面加載中斷,比如js加載中部,會(huì)只出現(xiàn)js之前的靜態(tài)頁(yè)面,影響頁(yè)面展示,帶來(lái)不好的用戶(hù)瀏覽體驗(yàn),同理,寫(xiě)在前面或者頭部,會(huì)加載js而不加載html,使得用戶(hù)看到了長(zhǎng)達(dá)數(shù)秒的空白的頁(yè)面(一般網(wǎng)路狀況下和一般電腦配置下),所以一般寫(xiě)在末尾,但如果要寫(xiě)在頭部也是也是可以的,需要加一句window.onload,這句話(huà)的意思是在頁(yè)面加載完成后加載js,效果等同于將js放在末尾。明白了嗎?

0 回復(fù) 有任何疑惑可以回復(fù)我~

不建議這么寫(xiě),可能會(huì)出問(wèn)題。

瀏覽器在解析html代碼時(shí)是從上向下依次解析的。如果js代碼在body標(biāo)簽之前沒(méi)有使用onload的情況下,則document.getElementById("xxx");這句代碼可能會(huì)因?yàn)閕d="xxx"的元素節(jié)點(diǎn)還沒(méi)有解析出來(lái)就被獲取但實(shí)際上是獲取不到的。

而onload的意思就是說(shuō)先讓其它html代碼解析出來(lái),最后解析onload中的代碼。

0 回復(fù) 有任何疑惑可以回復(fù)我~

不建議這么寫(xiě),可能會(huì)出問(wèn)題。

因?yàn)闉g覽器在解析html代碼的時(shí)候是從上倒下依次解析的。如果js代碼在沒(méi)有onload并且在body標(biāo)簽之前的情況下解析時(shí);那么會(huì)出現(xiàn)一個(gè)問(wèn)題:document.getElementById("XXX");這句代碼中的id=“XXX”的元素節(jié)點(diǎn)還沒(méi)有被解析出來(lái),你就直接獲取了。這種情況可能會(huì)出現(xiàn)bug

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Lshah

但是放在body最下面也還是錯(cuò)的
2016-04-05 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

為什么要把對(duì)addEvent函數(shù)的調(diào)用寫(xiě)在window.onload=function(){}里面

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

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