讓人眼前一亮的五個前端小技巧
1.快速隱藏
要隱藏一個DOM元素,不需要JavaScript。一個原生的HTML屬性就足以隱藏。其效果類似於新增一個style display: none;。
<p hidden>該段落在頁面上是不可見的,它對HTML是隱藏的。</p>
不過,這個技巧對偽元素不起作用。
2. 迅速定位
熟悉`inset` CSS 屬性嗎?它是`top`、`left`、`right`和`bottom`的縮寫版本。與簡寫的`margin`和`padding`類似,我們可以在一行中設定一個元素的所有偏移量。
// Before div { position: absolute; top: 0; left: 0; bottom: 0; right: 0; } // After div { position: absolute; inset: 0; }
3.前端測網速
Chrome瀏覽器提供了原始的API navigator.connection.downlink 可以訪問使用者當前網路環境的網路頻寬。
navigator.connection.downlink;
connection.downlink返回的並不是使用者當前環境的展示的網路傳輸速度,而是當前網路的頻寬,官方說法是:返回以Mb/s為單位的有效頻寬,並保留該值為25kb/s的最接近的整數倍。
例如,我在我家裡Chrome瀏覽器控制檯跑一下navigator.connection.downlink這段語句,結果返回的是10, 表示下載頻寬是10M的。
4.禁止拉動重新整理
CSS overscroll-behavior屬性允許開發人員在達到內容的頂部/底部時覆蓋瀏覽器的預設溢位滾動行為。使用該案例包括禁用移動裝置上的“拉動到重新整理”功能,消除過度滾動發光和橡皮筋效果,並防止頁面內容在模態/疊加層下滾動
body { overscroll-behavior-y: contain; }
這個屬性對於組織模態視窗內的滾動也非常有用--它可以防止主頁面在到達邊界時攔截滾動。
5. 禁止插入文字
當用戶在瀏覽器使用者介面發起“貼上”操作時,會觸發paste事件。
有時間,我想禁止使用者從某個地方複製的文字貼上到輸入框中。通過監聽paste事件並呼叫其方法preventDefault(),這可以很容易做到。
程式碼部署後可能存在的BUG沒法實時知道,事後為了解決這些BUG,花了大量的時間進行log 除錯,這邊順便給大家推薦一個好用的BUG監控工具 Fundebug。
以上就是讓人眼前一亮的五個前端小技巧的詳細內容。(