国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

javascript - 函數(shù)宣告和匿名函數(shù)有什麼不同? (前端小白求助。。)
高洛峰
高洛峰 2017-07-05 10:59:56
0
3
1047

用函數(shù)宣告的方式定義了一個(gè)改變?cè)豷tyle屬性的函數(shù)會(huì)報(bào)錯(cuò)

#但是window.onload下不會(huì)報(bào)錯(cuò)

高洛峰
高洛峰

擁有18年軟件開發(fā)和IT教學(xué)經(jīng)驗(yàn)。曾任多家上市公司技術(shù)總監(jiān)、架構(gòu)師、項(xiàng)目經(jīng)理、高級(jí)軟件工程師等職務(wù)。 網(wǎng)絡(luò)人氣名人講師,...

全部回覆(3)
大家講道理

寶寶 這個(gè)跟你用什麼函數(shù)沒關(guān)係!是因?yàn)閛nload會(huì)把文件載入完才觸發(fā) 而你一定是因?yàn)槲募]載入完 沒找到元素 所以才報(bào)錯(cuò) 把js放到元素下面

洪濤

這和函數(shù)宣告和匿名沒有關(guān)係,而是和函數(shù)的呼叫時(shí)機(jī)有關(guān)係。
改成這樣,還能找到和匿名函數(shù)的問題麼?

function change () { /* ... */ }
window.onload = change

前者在調(diào)用時(shí),box元素還沒有,所以報(bào)了錯(cuò);後者在DOM ready後調(diào)用,所以可以執(zhí)行。你可以在change函數(shù)中l(wèi)og一下box物件看看。

扔個(gè)三星炸死你

問題不是這個(gè),你需要知道文檔是從上到下加載的,你把js文件放在了head
執(zhí)行到j(luò)s文件的時(shí)候,這個(gè)時(shí)候連body都還沒加載,自然無法獲取到box ,也就無法設(shè)定css了。
你可以把js檔案放到body的尾部:

.
.
.
<script src="./x.js"></script>
</body>

這樣就不需要window.onload
如果放在了head裡面
就需要在js檔案頭部寫window.onload=function(){......}

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板