一件頗有意思的事情引起的無聊嘗試。html
博客園有個頗有趣的功能,就是閃存,翻閱到07年園長對閃存的定義:jquery
記錄一閃而過的想法,高興或者不高興均可以發一下。我用這個一直以來的想法就是,想到點啥發點啥,順便看看別人發的啥。可是.....唔......有的人可能言論過激,引發他人不適,因而就開撕了,這樣的場景家常便飯,場面之激烈堪稱一場大戲~~ git
因而就有園友指望能夠出個屏蔽功能,不喜歡的人直接在本身的列表裏pass掉。程序員
其實吧,我以爲,有時候沒有必要去和別人爭吵,看不慣就看不慣,就當個笑話就好。github
固然了,都是程序員,何須增長園子里程序員的工做量呢,哈哈你說是否是。可能有的人就要說了,不就是個屏蔽功能嘛,很複雜嗎?咦,這種場景是否是像極了互聯網公司某些產品的口頭禪。json
以上只是我的觀點,言歸正傳請看下面正文。api
哈哈,鋪墊完了,上乾貨了,爲了解決上述問題,以前我寫了一個js腳本,F12之後在控制檯執行, 便可清除指定人的閃存,可是這種方式多有不便,每次得F12打開瀏覽器控制檯,否則就不行。這個操做太麻煩了,直到今天,一個閃存園友提出了一個很棒的想法,寫個瀏覽器插件!瀏覽器
這是一個建設性的建議,立即我就開始動手了,搜索如何寫插件,清除人的閃存腳本我有了,差的只是如何利用插件去執行個人JS代碼。dom
http://www.javashuo.com/article/p-dhluhotq-ke.html異步
上面這個博客是我找到的入門教程,看懂基本操做以後我改了改,寫入了本身的JS就完事了。
步驟以下:(如下全部文件都在某個建好的文件夾中)
1.新建manifest.json文件,寫入以下內容:
{ "manifest_version": 2, "name" : "閃存過濾器", "description" : "不喜歡的人過濾掉就好啦~~", "version": "1.0.0.0", "content_scripts" :[ { "matches" : ["*://ing.cnblogs.com/*"], "js" : ["jquery-3.3.1.min.js","main.js"] } ] }
(參數詳解看這個 http://www.javashuo.com/article/p-abvdryob-kd.html )
這裏是指簡單的demo,參數只寫了須要的幾個,裏面指定了插件做用的域名,以及須要使用的JS,由於平時本身習慣寫JQ,mian.js是JQ寫法,因此引入了JQ文件。
main.js裏面內容如圖:
裏面測試人員0一、測試人員0一、測試人員03寫成須要屏蔽的暱稱便可。
插件文件夾最終的文件截圖以下:
除了JQ從網上下載,其餘兩個都是新建的。注意文件的編碼格式爲Utf8。
寫好了就開始用了!打開Google的擴展程序,點擊加載已解壓的擴展程序:
按下圖所示操做,添加一個文件夾:
添加之後是這樣的:
擴展程序裏面已經有咱們添加的插件啦~~~ 默認是啓用的!(對了,須要注意的是,打開瀏覽器的開發者模式才能添加插件喲)
最後,如圖檢驗成果!F12只是爲了看日誌,關掉之後插件依然有效,目前我設置的是加載清除一次,而後每2秒再定時清除一次,由於點「全站」的時候,下面JS是異步加載的,頁面不會刷新,因此須要定時再清一下dom。
這個是GIithub源碼地址 https://github.com/lovemoqing/IngFilter,其實就是一個簡單的文件.... 後續我再看有木有能夠完善的地方。
不想手動建文件的小夥伴就去下載吧,而後把mian.js裏面的暱稱改爲本身想屏蔽的便可。
Remarks:
1.mian.js裏的暱稱是寫死的,每次改的話不方便,須要從新加載插件,其實我能夠寫個api,去調取接口得到須要清除的名單,時間關係暫時寫死。
2.目前根據暱稱清除的,可是暱稱會存在常常修改的狀況,致使不許,若是採用博客地址名的話,相對準確一些,可是博客地址名也是能夠申請修改的,因此就不搞那麼複雜了。
後記:這個只是爲了練手,試試插件怎麼寫,若有不適敬請諒解,我寫這個並非放大矛盾,而是但願存在矛盾的園友能夠化干戈爲玉帛,若是實在不能,就用插件屏蔽一下。