如何調試 CSS Hover 事件

前言

最近在使用一個前端表格時,發現它的選中行高亮太不明顯了,準備修改一下對應樣式:

但是,如果打開開發者工具調試樣式,發現又沒辦法觸發 Hover 事件,找不到具體的樣式。

怎麼辦呢?

思路

如果能爲 Hover 事件處理代碼加上斷點,運行到斷點時中斷就好了。

但這顯然是個悖論,如果我們都能手工定位 Hover 事件代碼了,還需要斷點啥事。

不過,雖然我們沒法手工打斷點,但是 JavaScript 確實有一個幫我們自動打斷點的幫手,debugger 語句:

debugger 語句用於停止執行 JavaScript,並調用 (如果可用) 調試函數。

使用 debugger 語句類似於在代碼中設置斷點。

通常,你可以通過按下 F12 開啓調試工具, 並在調試菜單中選擇 "Console" 。

注意:如果調試工具不可用,則調試語句將無法工作。

實現

現在的關鍵是,怎麼在 Hover 事件中執行 debugger 語句?

實現很簡單,打開開發者工具,在控制檯中編寫以下內容:

setTimeout(() ={debugger;}, 3000)

然後將鼠標懸停到需要的位置,直到中斷即可:

結論

其實,我們是利用了 JavaScript 是單線程的這一特點。

使用 setTimeout 激活了調試工具,它將阻止瀏覽器執行其它函數,包括對 DOM 進行更新,相當於中斷了 Hover 事件。

想了解更多內容,請關注我的個人公衆號”My IO“

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/ta7b60eIJz4tzwTf4VgwJA