網(wǎng)頁背景色豆沙綠-油猴腳本
// ==UserScript==
// @name 網(wǎng)頁背景色豆沙綠
// @namespace? ? webpage-green
// @version? ? ? 0.1
// @description? 網(wǎng)頁背景色豆沙綠
// @author? ? ? ?green
// @match? ? ? ? https://baidu.com/*
// @grant? ? ? ? none
// ==/UserScript==
(function() {
? ? /*這是一個可以真正改變網(wǎng)頁背景顏色的js腳本,這個腳本只改變網(wǎng)頁中背景為白色(你也可以定義其他顏色)的部分,
* 它只將白色背景改成你設定的顏色,不會影響網(wǎng)頁的整體結(jié)構(gòu).由于經(jīng)常上網(wǎng),網(wǎng)頁白色的背景實在太刺眼了,網(wǎng)上早的方法
* 會改變整個網(wǎng)頁的背景使得網(wǎng)頁面目全非,在火狐網(wǎng)上找到一個叫"油猴"的插件可以調(diào)用腳本,在此啟發(fā)下寫了這個腳本,
*? ? Bcolor和color得初始值可以達到將指定的背景顏色改成指定的顏色的目的,
* 由于初學JavaScript這個腳本還有些問題,我在網(wǎng)上找到的代碼只能獲取rgb格式的背景顏色,所以設定被改變的
* 顏色時需要用rgb格式表示,另外只能改變一種顏色,有高手的話請完善一下.
* 默認的是把白色背景改成網(wǎng)上那個所謂的眼科專家說的對眼睛最好的顏色.
*/
? ? var Gr1=240; //RGB中的R值...當網(wǎng)頁的背景顏色的rgb值分別大于Gr1,Gg1,Gb1時此腳本將把顏色改成目標顏色color
? ? var Gg1=240; //RGB中的G值
? ? var Gb1=240; //RGB中的B值
? ? var color="#C7EDCC"
? ? //改變后的背景顏色,默認值為網(wǎng)上那個所謂的眼科專家說的對眼睛最好的顏色
? ? //**********以下代碼用戶無需修改***********//
? ? var Gr,Gg,Gb; //全局變量記錄當前標簽的rgb值,用于比較
? ? //以下函數(shù)用于分解獲取的"rgb(255, 255, 255)"格式的rgb
? ? function FGrgb(Grgb){
? ? ? ? var kaisi=Grgb.indexOf(",");
? ? ? ? Gr=parseInt(Grgb.slice(4,kaisi));
? ? ? ? var kaisi1=Grgb.indexOf(",",kaisi+1);
? ? ? ? Gg=parseInt(Grgb.slice(kaisi+1,kaisi1));
? ? ? ? Gb=parseInt(Grgb.slice(kaisi1+1,Grgb.length-1));
? ? ? ? //alert(Gr+"|"+Gb+"|"+Gg);
? ? }
? ? var Lcolor="";
? ? //用于記錄網(wǎng)頁中獲取的背景顏色
? ? //獲取并修改body的背景顏色.
? ? Lcolor=document.defaultView.getComputedStyle(document.body, "").getPropertyValue("background-Color");
? ? FGrgb(Lcolor);
? ? if ((Gr>Gr1 && Gg>Gg1 && Gb>Gb1) || Lcolor=="transparent") //transparent表示透明
? ? {
? ? ? ? //修改綠色
? ? ? ? document.body.style.backgroundColor=color;
? ? }
? ? //獲取并修改所有標簽的背景顏色
? ? var alltags = document.getElementsByTagName("*");
? ? let x
? ? for (x in alltags) {
? ? ? ? Lcolor = document.defaultView.getComputedStyle(alltags[x], "").getPropertyValue("background-Color");
? ? ? ? FGrgb(Lcolor);
? ? ? ? if (Gr > Gr1 && Gg > Gg1 && Gb > Gb1) {
? ? ? ? ? ? alltags[x].style.backgroundColor = color;
? ? ? ? }
? ? }
})();