在Google Chrome中加载页面后自动触发JavaScript代码
我有一个Javascript代码,我用它在HTML页面上产生夜间模式效果 代码是这样的-在Google Chrome中加载页面后自动触发JavaScript代码,javascript,Javascript,我有一个Javascript代码,我用它在HTML页面上产生夜间模式效果 代码是这样的- javascript: (function () { function RGBtoHSL(RGBColor) { with(Math) { var R, G, B; var cMax, cMin; var sum, diff; var Rdelta, Gdelta, Bdelta;
javascript: (function () {
function RGBtoHSL(RGBColor) {
with(Math) {
var R, G, B;
var cMax, cMin;
var sum, diff;
var Rdelta, Gdelta, Bdelta;
var H, L, S;
R = RGBColor[0];
G = RGBColor[1];
B = RGBColor[2];
cMax = max(max(R, G), B);
cMin = min(min(R, G), B);
sum = cMax + cMin;
diff = cMax - cMin;
L = sum / 2;
if (cMax == cMin) {
S = 0;
H = 0;
} else {
if (L <= (1 / 2)) S = diff / sum;
else S = diff / (2 - sum);
Rdelta = R / 6 / diff;
Gdelta = G / 6 / diff;
Bdelta = B / 6 / diff;
if (R == cMax) H = Gdelta - Bdelta;
else if (G == cMax) H = (1 / 3) + Bdelta - Rdelta;
else H = (2 / 3) + Rdelta - Gdelta; if (H < 0) H += 1;
if (H > 1) H -= 1;
}
return [H, S, L];
}
}
function getRGBColor(node, prop) {
var rgb = getComputedStyle(node, null).getPropertyValue(prop);
var r, g, b;
if (/rgb\((\d+),\s(\d+),\s(\d+)\)/.exec(rgb)) {
r = parseInt(RegExp.$1, 10);
g = parseInt(RegExp.$2, 10);
b = parseInt(RegExp.$3, 10);
return [r / 255, g / 255, b / 255];
}
return rgb;
}
function hslToCSS(hsl) {
return "hsl(" + Math.round(hsl[0] * 360) + ", " + Math.round(hsl[1] * 100) + "%, " + Math.round(hsl[2] * 100) + "%)";
}
var props = ["color", "background-color", "border-left-color", "border-right-color", "border-top-color", "border-bottom-color"];
var props2 = ["color", "backgroundColor", "borderLeftColor", "borderRightColor", "borderTopColor", "borderBottomColor"];
if (typeof getRGBColor(document.documentElement, "background-color") == "string") document.documentElement.style.backgroundColor = "white";
revl(document.documentElement);
function revl(n) {
var i, x, color, hsl;
if (n.nodeType == Node.ELEMENT_NODE) {
for (i = 0; x = n.childNodes[i]; ++i) revl(x);
for (i = 0; x = props[i]; ++i) {
color = getRGBColor(n, x);
if (typeof (color) != "string") {
hsl = RGBtoHSL(color);
hsl[2] = 1 - hsl[2];
n.style[props2[i]] = hslToCSS(hsl);
}
}
}
}
})()
javascript:(函数(){
函数RGBtoHSL(RGBColor){
(数学){
var R,G,B;
var cMax,cMin;
var总和,差异;
var Rdelta、Gdelta、Bdelta;
变量H,L,S;
R=RGBColor[0];
G=RGB颜色[1];
B=RGB颜色[2];
cMax=max(max(R,G),B);
cMin=min(min(R,G),B);
总和=cMax+cMin;
差异=cMax-cMin;
L=总和/2;
如果(cMax==cMin){
S=0;
H=0;
}否则{
如果(l1)H-=1;
}
返回[H,S,L];
}
}
函数getRGBColor(节点,属性){
var rgb=getComputedStyle(节点,null).getPropertyValue(属性);
var r,g,b;
if(/rgb\(\d+)\s(\d+)\s(\d+)\/.exec(rgb)){
r=parseInt(RegExp.$1,10);
g=parseInt(RegExp.$2,10);
b=parseInt(RegExp.$3,10);
返回[r/255,g/255,b/255];
}
返回rgb;
}
函数hslToCSS(hsl){
返回“hsl(“+Math.round(hsl[0]*360)+”,“+Math.round(hsl[1]*100)+”%,“+Math.round(hsl[2]*100)+”%)”;
}
var props=[“颜色”、“背景色”、“边框左侧颜色”、“边框右侧颜色”、“边框顶部颜色”、“边框底部颜色”];
var props2=[“颜色”、“背景颜色”、“borderLeftColor”、“borderRightColor”、“borderTopColor”、“borderBottomColor”];
if(getRGBColor(document.documentElement,“背景色”)==“字符串”)document.documentElement.style.backgroundColor=“白色”;
revl(document.documentElement);
函数revl(n){
变量i、x、颜色、hsl;
if(n.nodeType==Node.ELEMENT\u Node){
对于(i=0;x=n.childNodes[i];++i)revl(x);
对于(i=0;x=props[i];++i){
颜色=getRGBColor(n,x);
if(typeof(color)!=“string”){
hsl=RGBtoHSL(颜色);
hsl[2]=1-hsl[2];
n、 样式[props2[i]]=hslToCSS(hsl);
}
}
}
}
})()
我已经将它保存为GoogleChrome上书签栏中的书签,但我希望它能自动应用于我加载的每个页面。我应该做些什么来实现这一点?您应该将其作为
用户脚本:了解它们。你知道在Google Chrome中添加
user.js
本地文件的方法吗。