為了讓大家編程更輕松一些,本挑選一些有用的但相對比較少見有用的技巧。廢話不多說,開車了。
1.快速隱藏
要隱藏一個DOM元素,不需要JavaScript。一個原生的HTML屬性就足以隱藏。其效果類似于添加一個style display: none
;。
<p hidden>該段落在頁面上是不可見的,它對HTML是隱藏的。</p>
不過,這個技巧對偽元素不起作用。
2. 迅速定位
熟悉`inset
` CSS 屬性嗎?它是`top
`、`left
`、`right
`和`bottom
`的縮寫版本。與簡寫的`margin
`和`padding
`類似,我們可以在一行中設(shè)置一個元素的所有偏移量。
// Before div { position: absolute; top: 0; left: 0; bottom: 0; right: 0; } // After div { position: absolute; inset: 0; }
3.前端測網(wǎng)速
Chrome瀏覽器提供了原始的API navigator.connection.downlink
可以訪問用戶當(dāng)前網(wǎng)絡(luò)環(huán)境的網(wǎng)絡(luò)帶寬。
navigator.connection.downlink;
connection.downlink返回的并不是用戶當(dāng)前環(huán)境的展示的網(wǎng)絡(luò)傳輸速度,而是當(dāng)前網(wǎng)絡(luò)的帶寬,官方說法是:返回以Mb/s
為單位的有效帶寬,并保留該值為25kb/s的最接近的整數(shù)倍。
例如,我在我家里Chrome瀏覽器控制臺跑一下navigator.connection.downlink這段語句,結(jié)果返回的是10, 表示下載帶寬是10M的。
4.禁止拉動刷新
CSS overscroll-behavior
屬性允許開發(fā)人員在達(dá)到內(nèi)容的頂部/底部時覆蓋瀏覽器的默認(rèn)溢出滾動行為。使用該案例包括禁用移動設(shè)備上的“拉動到刷新”功能,消除過度滾動發(fā)光和橡皮筋效果,并防止頁面內(nèi)容在模態(tài)/疊加層下滾動
body { overscroll-behavior-y: contain; }
這個屬性對于組織模態(tài)窗口內(nèi)的滾動也非常有用–它可以防止主頁面在到達(dá)邊界時攔截滾動。
5. 禁止插入文字
當(dāng)用戶在瀏覽器用戶界面發(fā)起“粘貼”操作時,會觸發(fā)paste事件。
有時間,我想禁止用戶從某個地方復(fù)制的文本粘貼到輸入框中。通過監(jiān)聽paste事件并調(diào)用其方法preventDefault()
,這可以很容易做到。
<input type="text"></input> <script> const input = document.querySelector('input'); input.addEventListener("paste", function(e){ e.preventDefault() }) </script>
代碼部署后可能存在的BUG沒法實時知道,事后為了解決這些BUG,花了大量的時間進行l(wèi)og 調(diào)試,這邊順便給大家推薦一個好用的BUG監(jiān)控工具 Fundebug
。
推薦學(xué)習(xí):css視頻教程