首页 > 技术交流 > GreaseMonkey的应用真是强大

GreaseMonkey的应用真是强大

今天无聊,想去下一个漫画来看,本来嘛,想着FX这么强大,一定有相关的扩展了,搜索了一番,失望而归。如果你晓得什么在看图的时候可以自动下载指定网址序列下图片的插件,也欢迎指教!

好吧,事实上我打算写的东西也不在这个里面,仅仅只是一些简单的GM应用而已。

首先推荐一本入门教程,非常不错,像我这样的脚本白痴都可以看的懂的:《深入浅出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的功能在处理网页时实在是太强大了,通过就可以轻松操纵网页的任意内容了,不过可惜的是,就我的使用经验来说,好像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脚本的编写我才刚刚开始看,如果你有兴趣,我们可以一起学习。

  1. mfkof Windows Vista Opera 9.80
    十 26th, 2009 @ 12:04 | #1

    汗,我看到代码就晕啊…

    [回复]

  2. 墨匠 Windows XP Internet Explorer 8.0
    十 27th, 2009 @ 09:28 | #2

    啥是js苦手?php苦手路过

    [回复]

    janxin Windows 7 Firefox 3.5.3回复:

    @墨匠, 所谓js我就不解释了吧,至于苦手,就是什么都不懂的意思….

    [回复]

  3. dfei Linux Firefox 3.5.5
    十一 15th, 2009 @ 09:03 | #3

    js很强大

    [回复]

  4. ZeroDream Windows XP Google Chrome 4.0.223.16
    十一 23rd, 2009 @ 10:33 | #4

    懒得学那东西……

    [回复]

    janxin Mac OS X Safari 4.0回复:

    @ZeroDream, 其实就是js而已

    [回复]

    ZeroDream Windows XP Google Chrome 4.0.223.16回复:

    @janxin, JS还半懂不懂的呢囧

    [回复]

    janxin Windows XP Opera 9.80回复:

    @ZeroDream, 好吧,其实我是完全不懂得….

    [回复]

评论提交中, 请稍候...

留言

:zzz :stop :stone :smile :oops: :love :hurt2 :hurt :hit :hide :freeze :evil2 :cry :blind :angel

可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks