编写替换背景图像的用户脚本
Writing a userscript that replaces a background image
这是代码
// ==UserScript==
// @name Wood Background
// @namespace http://www.nationstates.net/nation=ellorn
// @description Changes background to wood finish
// @include http:*//w11.zetaboards.com/Allied_Republics/*
// ==/UserScript==
function addCss(cssString) {
var head = document.getElementsByTagName('head')[0];
return unless head;
var newCss = document.createElement('style');
newCss.type = "text/css";
newCss.innerHTML = cssString;
head.appendChild(newCss);
}
addCss (
'* { background: #00ff00 url('http://awesomewallpapers.files.wordpress.com/2010/01 /wooden_top.jpg') no-repeat
fixed center; }'
);
我正在尝试替换网站的背景:http://awesomewallpapers.files.wordpress.com/2010/01/wooden_top.jpg
只需更改样式,就可以使用Stylish插件(几乎每个浏览器都可以使用该插件的某些变体)。
Stylish比Greasemonkey或用户脚本更快、更轻、更容易。userstyles.org.上有很多预先制作好的样式
除此之外,请使用内置函数,如GM_addStyle()
。
以下脚本适用于Firefox和Chrome,可能还有其他一些浏览器。(CSS字符串中存在语法错误):
// ==UserScript==
// @name Wood Background
// @namespace http://www.nationstates.net/nation=ellorn
// @description Changes background to wood finish
// @include http:*//w11.zetaboards.com/Allied_Republics/*
// ==/UserScript==
GM_addStyle (
"* { background: #00ff00 "
+ "url('http://awesomewallpapers.files.wordpress.com/2010/01/wooden_top.jpg')"
+ " no-repeat fixed center; }"
);
请注意,最好将*
替换为body
。
您可以定义自己的用户样式表来覆盖网站的作者样式表。我认为这比编写javascript更适合更改CSS。
以下是关于如何实现这一目标的简短介绍。
除此之外,如果你正确地交出CSS字符串(固定的引号和换行符),你的代码应该可以正常工作:
var css = "* { background: #00ff00 url('http://awesomewallpapers.files.wordpress.com/2010/01/wooden_top.jpg') no-repeat fixed center; }";
addCss ( css );
但是,请注意,*
将中断,因为您将木质背景应用于每个元素,而不仅仅是您的背景元素(HTML或body或包装器div)。
相关文章:
- 将jQuery转换为用户脚本的普通Javascript时遇到问题
- 如何在页面一侧的浮动框中显示用户脚本的输出
- 何时可以;我的用户脚本在Javascript中触发右键单击(上下文菜单)
- 如何只重新加载用户脚本,即不重新加载页面
- Chrome/Tampermonkey 用户脚本存储在文件系统上的什么位置
- 一个用户脚本的两个实例如何在帧之间进行通信
- 如何让你的用户脚本处理那些没有'还不存在
- 从用户脚本空间重新定义Firefox中的原生浏览器功能
- 如何访问iframe's来自用户脚本的javascript
- 使用sh测试用户脚本
- 编写替换背景图像的用户脚本
- 为什么获胜't将这个bookmarklet转换为用户脚本
- 我可以访问用户脚本中的匿名函数变量吗?
- 如何在 chromium 中安装用户脚本
- 如何将 JSON 字符串中的文本替换为 Greasemonkey 的用户脚本
- 用于更改链接的用户脚本
- 如何使用用户脚本删除烦人的可点击正文链接
- 创建“另存为”用户脚本
- JS控制台与用户脚本中的不同行为,尝试操作iframed内容
- 我怎样才能说服WebStorm我的用户脚本加载jQuery