BOM解讀 BOM概念 - browser object model:瀏覽器對象模型 bom相當於提供了一套操作瀏覽器的方法。(windw是頂級對象) BOM的操作方法:(這裡只列舉比較常用) navigator: (包含有瀏覽器的信息) //以前用來相容,目前沒多大用處,瞭解即可 appName ...
BOM概念 - browser object model:瀏覽器對象模型
BOM的操作方法:(這裡只列舉比較常用)
navigator: (包含有瀏覽器的信息) //以前用來相容,目前沒多大用處,瞭解即可
-
appName //瀏覽器名稱
-
appCodeName //瀏覽器的代碼名(內核)
-
appVersion //瀏覽器的平臺與版本
-
userAgent //瀏覽器的整體信息
location:(包含有關當前url的信息)
-
href //獲取、設置瀏覽器的url
-
search //獲取從問號 (?) 開始的url(查詢部分)。
-
hash //獲取、設置url中的錨點名稱
-
reload() //刷新頁面
-
assign(url) //讓url重新定向-跳轉
-
replace(url) //使用新的url代替原來的url-跳轉
history:(包含用戶訪問過的url)
-
back() //列表前一個url(後退)
-
forward() //列表後一個url(前進)
-
go(數字) //列表中某個具體的頁面
screem:(包含客戶端顯示屏的信息)
-
width //屏幕寬度
-
height //屏幕高度
-
availWidth //屏幕可用寬度
-
availHeight //屏幕可用高度
document:(既window.docment,window可以不寫)
https://www.w3school.com.cn/jsref/dom_obj_window.asp
//這個內容比較多,涵蓋方面比較廣(不是我懶,真不是)
彈出層:
-
alert() //僅彈出消息
-
confirm() //彈出消息需要確認
-
prompt() //彈出輸入框進行確認
瀏覽器的大小:
-
window.innerWidth //瀏覽器寬度
-
window.innerHeight //瀏覽器高度
定時器:(非同步操作)//別問我非同步操作是什麼,問了就是不懂、不會、不知道!
1、間隔執行:setInterval(函數,間隔的毫秒數) //其實就是一直迴圈執行
清除:clearInterval(定時器的返回值)
2、延遲執行:setTimeout(函數,延遲的毫秒數) //其實就是只會延遲執行一次
清除:clearTimeout(定時器的返回值)
//兩個定時器可以混用,clearTimeout 也可以清除間隔,clearInterval 也可以清除延時。
事件:
-
load //當文檔中所有的內容載入完後再載入這個事件中的內容
-
unload //當瀏覽器關閉之前會觸發的事件
-
resize //當瀏覽器大小發生改變的時候會觸發
-
scroll //當滾動條發生滾動的時候會觸發的事件
棧記憶體在執行同步代碼的時候,瀏覽器線程中 代碼的時間也在走
瀏覽器線程中代碼只要等到自己能執行的時候,就會去隊列中等待
非同步代碼都是在同步代碼執行結束之後才從隊列中拿出來執行的
同步:等待/排隊/然後再執行 - 按順序執行
非同步:可以同時進行
js中所有非同步代碼都是在同步代碼執行結束之後才執行的
事件迴圈: - 瀏覽器中的非同步代碼等到自己能執行的條件ok了,就會進入隊列中排隊等待執行,棧記憶體把同步代碼執行完了,從隊列中取一個,執行一個,再取一個,再執行一個 - 這樣形成一個小迴圈 - 事件迴圈(EventLoop)
//我大佬教的,看不看的懂隨緣吧。反正我-不懂、不會、不知道。
學習完代碼,在最後來一個小故事吧,都是以看來的,以後可能會自己寫寫。
加菲貓里有一段話,講有一天,加菲貓走丟了,被賣給了一家寵物店。它怕喬恩找不到它而著急,它非常痛苦。終於有一天,喬恩走進了寵物店,看到了加菲貓,欣喜若狂,將它買回家中,結局圓滿。 故事的最後那隻肥貓背對著日落說了這樣一句"我永遠也不會問喬恩,那天他為什麼會走進寵物店"