JavaScript學習筆記027-BOM0window0location

Author:Mr.柳上原

  • 付出不亞於任何的努力
  • 願我們所有的努力,都不會被生活辜負
  • 不忘初心,方得始終

這幾天找工作

遇到一件讓我非常尷尬的問題

趕場似的用了三天學了vue和小程序開發

然後趕出兩個實戰項目

很多api都還不熟練

導致面試時問的問題

完全答不上來

而且好多不常用的原生js的方法都忘記了

問的時候一問三不知

還因爲緊張導致底氣不足

一慌就亂答一氣

淒涼啊......

<!DOCTYPE html> <!-- 文檔類型:標準html文檔 -->

<html lang='en'> <!-- html根標籤 翻譯文字:英文 -->

<head> <!-- 網頁頭部 -->

<meat charset='UTF-8'/> <!-- 網頁字符編碼 -->

<meat name='Keywords' content='關鍵詞1,關鍵詞2'/>

<meat name='Description' content='網站說明'/>

<meat name='Author' content='作者'/>

<title>前端59期學員作業</title> <!-- 網頁標題 -->

<link rel='stylesheet' type='text/css' href='css/css1.css'/> <!-- 外鏈樣式表 -->

<style type='text/css'> /*內部樣式表*/

</style>

</head>

<body> <!-- 網頁主幹:可視化區域 -->

<script>
/*
BOM:
瀏覽器對象模型
使js能與瀏覽器進行交互
*/
// window對象
// 瀏覽器窗口
// 所有js的全局對象,全局函數,全局變量都會成爲window的屬性
// document也是window對象的屬性

// location 瀏覽器地址相關
location.href; // 當前頁面地址
location.href = "//www.baidu.com"; // 賦值,跳轉地址
location.search; // 獲取地址查詢部分(?後面的值)
location.hash; // 獲取地址的哈希值(錨點值)
location.port; // 獲取地址的端口號
location.hostname; // 獲取地址的主機名
location.host; // 獲取主機名和端口號
location.pathname; // 獲取地址的路徑
location.protocol; // 獲取地址協議
location.reload(); // 重載當前頁面(刷新)

// history 瀏覽器歷史記錄
history.length; // 查詢當前窗口訪問過多少次網站
history.back(); // 後退到前一次訪問的網站
history.forward(); // 前進到後一次訪問的網站
history.go(); // 進入具體歷史記錄的某一個頁面,參數爲數字,正數或負數

// navigator 客戶端信息
navigator.userAgent; // 瀏覽器信息(一般用於瀏覽器嗅探)

// window對象的方法
open(url, target); // 打開瀏覽器或窗口,第一個參數爲打開對象的地址,第二個爲設置新窗口還是原窗口打開
close(); // 關閉窗口
setTimeout();
setInterval();
clearInterval();
clearTimeout(); // 定時器相關
scrollTo(x, y); // 窗口內容滾動到指定座標
scrollBy(x, y); // 與To類似,不過指定了單位爲px
confirm("fy"); // 瀏覽器彈窗,與alert類似,多了取消鍵,取消鍵不會輸出內容,確定爲true,取消爲false
prompt("fy"); // 帶輸入框的瀏覽器彈窗,第二個參數爲輸入框的默認值

// 定時器在窗口切換的bug
// 切換窗口時,原窗口的定時器不會停止運動
// 原窗口的渲染會停止
// 這樣有可能會導致報錯
// 解決辦法一:切換窗口時,失去焦點的窗口定時器停止運動
const fn = () => {
document.title++;
}
let timer = setInterval(fn);
window.onfocus = function (){
timer = setInterval(fn, 13);
}
window.onblur = function (){
clearInterval(timer);
}
// 解決辦法二:
const fn = () => {
document.title++;
requestAnimationFrame(fn);
}
fn();

</script>

</body>

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章