課程
/前端開發(fā)
/JavaScript
/DOM事件探秘
代碼寫在1的位置,就報錯,報錯如下:
代碼寫在2的位置,就可以正常使用,這是為什么呢?求解?。?/p>
2016-09-02
源自:DOM事件探秘 4-2
正在回答
window.onload是一個事件函數(shù),指當(dāng)頁面加載完成后,立即調(diào)用的函數(shù)。代碼中,你將drag這個函數(shù)賦值給window.onload,那么當(dāng)頁面加載完成后,就會調(diào)用drag函數(shù)。
document.getElementById('ui_boxyClose')的作用是從當(dāng)前DOM樹中獲取id為ui_boxyClose的元素,DOM樹在頁面加載完成后才是完整的,也就是說只有寫在drag函數(shù)里,才能在完整的DOM樹中根據(jù)id值獲取你想要的元素。
如果你將document.getElementById('ui_boxyClose')寫在onload函數(shù)外面(或者說寫在drag函數(shù)外面),此時執(zhí)行js文件,是有可能獲取不到指定id值的元素(取決于js腳本文件在html中的位置),所以就會報錯,不能為一個null空值設(shè)置onclick事件函數(shù),即說明沒有找到id為ui_boxyClose的元素。
_小奕_ 提問者
舉報
DOM事件?本課程會通過實例來給小伙伴們講解如何使用這些事件
1 回答函數(shù)放在onload外面也可以直接使用
4 回答為什么要把對addEvent函數(shù)的調(diào)用寫在window.onload=function(){}里面
8 回答為什么把flag的賦值放在函數(shù)里面不行
2 回答為什么獲取id為play得到的變量不能放在最外面,做全局變量呢?我試了這樣,onload函數(shù)不能直接使用該變量,為什么
3 回答為什么定義了全局變量title.play,stop在onload的匿名函數(shù)里不能用呢
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-09-03
window.onload是一個事件函數(shù),指當(dāng)頁面加載完成后,立即調(diào)用的函數(shù)。代碼中,你將drag這個函數(shù)賦值給window.onload,那么當(dāng)頁面加載完成后,就會調(diào)用drag函數(shù)。
document.getElementById('ui_boxyClose')的作用是從當(dāng)前DOM樹中獲取id為ui_boxyClose的元素,DOM樹在頁面加載完成后才是完整的,也就是說只有寫在drag函數(shù)里,才能在完整的DOM樹中根據(jù)id值獲取你想要的元素。
如果你將document.getElementById('ui_boxyClose')寫在onload函數(shù)外面(或者說寫在drag函數(shù)外面),此時執(zhí)行js文件,是有可能獲取不到指定id值的元素(取決于js腳本文件在html中的位置),所以就會報錯,不能為一個null空值設(shè)置onclick事件函數(shù),即說明沒有找到id為ui_boxyClose的元素。