今天仔细学习了html加载执行的顺序
頁面上通常會有三個標(biāo)簽,html,head,body,這三個之間的關(guān)系是,html包含整個頁面代碼,head主要用于引入一些js,css文件,body用來包含頁面代碼和js代碼
瀏覽器加載頁面的順序為,先加載head,如果碰到script標(biāo)簽的話,會判斷是引入外部js文件還是js代碼,如果是文件會開始下載外部文件,如果是代碼則html頁面加載會暫停,此時javascript引擎開始執(zhí)行代碼,等代碼執(zhí)行完了繼續(xù)加載頁面,等head標(biāo)簽里面的內(nèi)容都加載完了之后 開始加載body標(biāo)簽的內(nèi)容,如果body里面遇到script標(biāo)簽的話,是文件就下載,是代碼又會暫停加載頁面,轉(zhuǎn)而讓引擎執(zhí)行js代碼,等js代碼執(zhí)行完畢之后才會繼續(xù)加載頁面這種。
我今天就遇到這種情況,我把js代碼寫在了head標(biāo)簽里面,js頁面有操作table表格的代碼,但是一直都取不到表格的元素,原因就是因為head里面的js代碼執(zhí)行的時候,頁面還沒有加載完成,表格也沒有加載出來,導(dǎo)致今天的問題。
一般的作法是把有js代碼的script標(biāo)簽放在body的靠后位置,或者要是為了body里面結(jié)構(gòu)比較清晰,也可以放在head里面,但是js代碼放在window.onload事件里面,這樣也可以
轉(zhuǎn)載于:https://www.cnblogs.com/tzpRoomForLearning/p/10235333.html
總結(jié)
以上是生活随笔為你收集整理的今天仔细学习了html加载执行的顺序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5-struts2知识补充(常用的str
- 下一篇: 冲上热搜!快手宣布取消大小周