久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - 函數聲明和匿名函數有什么不同?(前端小白求助。。)

瀏覽:130日期:2023-02-26 17:33:39

問題描述

用函數聲明的方式定義了一個改變元素style屬性的函數會報錯javascript - 函數聲明和匿名函數有什么不同?(前端小白求助。。)

javascript - 函數聲明和匿名函數有什么不同?(前端小白求助。。)

但是window.onload下不會報錯javascript - 函數聲明和匿名函數有什么不同?(前端小白求助。。)

問題解答

回答1:

寶寶 這個和你用什么函數沒關系!是因為onload會把文檔加載完才觸發 而你肯定是因為文檔沒加載完 沒找到元素 所以才報錯 把js放到元素下面

回答2:

這和函數聲明和匿名沒有關系,而是和函數的調用時機有關系。改成這樣,還能找到和匿名函數的問題么?

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

前者在調用時,box元素還沒有,所以報了錯;后者在DOM ready后調用,所以可以執行。你可以在change函數中log一下box對象看看。

回答3:

問題不是這個,你需要知道文檔是從上到下加載的,你把js文件放在了head里執行到js文件的時候,這個時候連body都還沒加載,自然無法獲取到box,也就無法設置css了。你可以把js文件放到body的尾部:

...<script src='http://m.baoyu77737.com/wenda/x.js'></script></body>

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

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 临沭县| 蒙山县| 乐都县| 保亭| 泸水县| 克什克腾旗| 康定县| 甘谷县| 额敏县| 乐平市| 永昌县| 专栏| 肇东市| 仁怀市| 张掖市| 淮北市| 东乌珠穆沁旗| 莱西市| 东宁县| 从化市| 河津市| 册亨县| 锡林郭勒盟| 大同市| 余干县| 凤冈县| 兰州市| 上蔡县| 炉霍县| 乡城县| 札达县| 裕民县| 读书| 布尔津县| 华亭县| 含山县| 正定县| 苏尼特右旗| 武强县| 合水县| 佳木斯市|