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