今天无聊,想去下一个漫画来看,本来嘛,想着FX这么强大,一定有相关的扩展了,搜索了一番,失望而归。如果你晓得什么在看图的时候可以自动下载指定网址序列下图片的插件,也欢迎指教!
好吧,事实上我打算写的东西也不在这个里面,仅仅只是一些简单的GM应用而已。
首先推荐一本入门教程,非常不错,像我这样的脚本白痴都可以看的懂的:《深入浅出Greasemonkey》。在里面也有很多很简单,但是却非常实用的例子,为快速上手GreaseMonkey脚本编写提供了非常方便的指南。
在参阅该教程几页之后,我也可以写一个清爽页面的脚本啦:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// ==UserScript== // @name 百度贴吧侧边栏广告去除器 // @namespace http://www.kernel2heart.com // @description 去除百度贴吧侧边栏广告,免广告功能请配合Adblock Plua使用 // @include http://tieba.baidu.com/* // @author 灰机要考研 // @version 0.01 /* @reason * 支持去除普通百度贴吧侧边栏广告 * 横幅flash和图片广告请使用Adblock plus去除 @end*/ // ==/UserScript== var adSidebar = document.getElementById('rightAd'); if (adSidebar) { adSidebar.parentNode.removeChild(adSidebar); } |
如果比较感兴趣如何实现这些功能的,可以参见《深入浅出Greasemonkey》。GM的功能在处理网页时实在是太强大了,通过GreaseMonkey就可以轻松操纵网页的任意内容了,不过可惜的是,就我的使用经验来说,好像GM需要等待页面载入完成之后才会执行脚本,这样的话,比如载入去广告脚本的时候,广告还是会一闪而过的,算是一个缺点吧。
我是一个JS苦手,其实在去除其他广告时也有其他措施的,例如一个Div广告具有class=sponsoredlink属性,且唯一,可以这样获得:
1 2 3 4 5 6 |
thisDiv = document.evaluate( "//div[@class='sponsoredlink']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); |
如果属性不唯一的话,会返回元素组,如果RemoveChild的时候,会对所有元素进行操作。
有其他问题,欢迎一起交流,GM脚本的编写我才刚刚开始看,如果你有兴趣,我们可以一起学习。





















十 26th, 2009 @ 12:04 | #1
汗,我看到代码就晕啊…
[回复]