18 個(gè)強(qiáng)大的 JavaScript 開發(fā)技巧
瀏覽器
01、實(shí)現(xiàn)全屏
當(dāng)你需要將當(dāng)前屏幕顯示為全屏?xí)r,以下代碼對(duì)你有用。
02、退出全屏
當(dāng)你需要退出全屏?xí)r
03、頁面打印
當(dāng)您需要打印當(dāng)前頁面時(shí)
04、打印內(nèi)容樣式改變
當(dāng)需要打印出當(dāng)前頁面,但又需要修改當(dāng)前布局時(shí)
05、阻止關(guān)閉事件
當(dāng)需要阻止用戶刷新或關(guān)閉瀏覽器時(shí),可以選擇觸發(fā)beforeunload事件,部分瀏覽器無法自定義文本內(nèi)容。
06、屏幕錄制
當(dāng)您需要錄制當(dāng)前屏幕并上傳或下載屏幕錄像時(shí)。
07、判斷橫豎屏
當(dāng)你需要判斷手機(jī)橫屏或豎屏狀態(tài)時(shí)。
08、改變橫豎屏的樣式
當(dāng)你需要為橫豎屏設(shè)置不同的樣式時(shí)。
09、標(biāo)簽頁隱藏
當(dāng)你需要監(jiān)聽標(biāo)簽顯示和隱藏的事件時(shí)。
10、本地圖片預(yù)覽
當(dāng)你從客戶端獲取圖片但不能立即上傳到服務(wù)器,需要預(yù)覽時(shí)
圖片
11、圖片預(yù)加載
當(dāng)你有很多圖片時(shí),你需要預(yù)加載圖片以避免白屏
JavaScript
12、字符串腳本
當(dāng)需要將一串字符串轉(zhuǎn)成js腳本時(shí),該方法存在xss漏洞,慎用。
13、遞歸函數(shù)名解耦
當(dāng)你需要寫一個(gè)遞歸函數(shù)時(shí),你聲明了一個(gè)函數(shù)名,但是每次修改函數(shù)名時(shí),你總是忘記修改內(nèi)部函數(shù)名。argument是函數(shù)的內(nèi)部對(duì)象,包括傳入函數(shù)的所有參數(shù),arguments.callee代表函數(shù)名。
DOM 元素
14、隱性判斷
當(dāng)需要判斷一個(gè)dom元素當(dāng)前是否出現(xiàn)在page view中時(shí),可以嘗試使用IntersectionObserver來判斷。
15、元素可編輯
當(dāng)你需要編輯一個(gè)dom元素時(shí),讓它像textarea一樣點(diǎn)擊
16、元素屬性監(jiān)控
17、打印dom元素
在開發(fā)過程中需要打印dom元素時(shí),使用console.log往往只能打印出整個(gè)dom元素,無法查看dom元素的內(nèi)部屬性。您可以嘗試使用 console.dir
其他
18、激活應(yīng)用
當(dāng)你在移動(dòng)端開發(fā)時(shí),你需要打開其他應(yīng)用程序。location.href賦值也可以操作以下方法