注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

童骏的网易博客

童骏的网易博客

 
 
 

日志

 
 

Greasemonkey  

2008-06-09 14:50:55|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1.1. Greasemonkey是什么?

Greasemonkey 是一个 Firefox 扩展,它有通过编写脚本来改变被访问网页的功能。使用它,能使您访问的网站更便于阅读或者更便于使用。使用它,您能修复网页渲染的缺陷,而无须烦扰网站管 理员。使用它,您能让网页更好地使用残疾人援助技术,清楚响亮地说出网页内容,或者将网页内容变为盲文。使用它,您能自动地获得其它网站的数据,从而使两 个网站更好地相互链接起来。

然而 Greasemonkey 本身并没有作这些事。实际上,在您安装它之后,您注意到根本没有任何变动...直到您开始安装一种叫做“用户脚本”的东西。用户脚本(user script)就是一大块 Javascript 代码,还有些附加信息,用来告诉 Greasemonkey 脚本应该在何时何地运行。每个用户脚本能够针对具体页面,具体网站,或者一批网站。用户脚本能做到您在 Javascript 中可做到的任何事情。实际上,它能做得更多,因为 Greasemonkey 提供了专供用户脚本使用的函数。

Greasemonkey 脚本库 (http://dunck.us/collab/GreaseMonkeyUserScripts)包含了上百个用户脚本,这些都是用户为了满足自己的 需要而写的。一旦您写了自己的用户脚本,只要您认为别人也许发现它有用,您可以把它添加到脚本库中。您也可以自己使用,因为从编写过程中获得知识,获得满 足感,才是更重要的。

这是Greasemonkey的邮件列表 (http://greasemonkey.mozdev.org/list.html),您可以在那里提问,发表用户脚本,和讨论新特性的想法。 Greasemonkey 开发人员常去这个邮件列表; 他们也许甚而回答您的问题!
[编辑]
为什么写这本书?

Dive Into Greasemonkey 是从 Greasemonkey 邮件列表中的用户讨论和作者本人编写用户脚本的经验中发展而来。仅仅一个星期,作者就发现,新用户经常会提出重复的问题,而这些问题是被回答过的。此外, 在写了几个用户脚本以后,作者发现,一些常用的模式,以及可以解决某一类问题的成块的可重用代码会反复出现。因此,作者开始整理这些有用的模式,解释编程 思路,同时作者也从中获益。

如果没有 Greasemonkey 的开发者 Aaron Boodman 和 Jeremy Dunck 的大力帮助,没有那些对我的初稿提出宝贵的反馈建议的用户,就不会有现在的这本书。在这里对他们表示衷心的感谢。

1.2. 安装 Greasemonkey

要写用户脚本,您需要先会安装0.3或以上版本的 Greasemonkey 扩展。

步骤: 安装 Greasemonkey 扩展

1. 访问Greasemonkey的主页 (http://greasemonkey.mozdev.org/)
2. 点击名为“Install Greasemonkey”(注:英文主页)的链接
3. Firefox会显示(可能在浏览器窗口的上方)它阻止网站安装软件的信息。点击编辑选项...打开"允许的站点"对话框,然后点击允许,将 Greasemonkey 的网站添加到允许安装软件的网站列表中。单击确定关闭“允许的站点”对话框
4. 再次点击名为“Install Greasemonkey”的链接
5. 现在将弹出安装对话框,确定您真的要安装。等几秒钟,安装按钮变亮,再点击安装
6. 重新启动您的浏览器

一 旦您重新启动了浏览器,选择工具(T)菜单。您应该看到三个菜单项:Install User Script..., Manage User Scripts..., 和 User Script Commands。 只要 Manage User Scripts... 可以使用,那么就装好了。其他的两个要在特殊的情况才能使用。

一般来说,安装好 Greasemonkey,(除了三个菜单项外)并不会给浏览器添加任何功能。它能让您添加另外的东西,名叫“用户脚本”(user script),它可以用来定制指定的网页。

1.3. 安装用户脚本

一个 Greasemonkey 的“用户脚本(user script)”就是一个用Javascript编写的文件,您可以设置在一个或多个网页上执行安装的用户脚本。

您可以在Greasemonkey script repository (http://dunck.us/collab/GreaseMonkeyUserScripts)(Greasemonkey脚本库,英文网站)找到 许多用户脚本。尽管没人要求您必须把您的脚本放到那儿去,实际上,您可以把您的脚本共享到任何地方,这样其他人就可以安装它了。您甚至不需要一台网络服务 器;因为你可以从本地文件中安装用户脚本。

用户脚本的文件名必须以 .user.js 结尾。


我(原作者)写的第一个用户脚本叫做 “Butler”。它增强了Google的搜索结果的功能。

步骤: 安装 Butler 用户脚本

&10026; 怎样安装用户脚本 (http://diveintogreasemonkey.org/videos/install-user-script.html)。

1. 访问 Butler (http://diveintomark.org/projects/butler/) 的主页,将看到有关 Butler 的功能的简要概述。(并不是所有的用户脚本都有主页; Greasemonkey 只关心用户脚本本身。)
2. 点击“Download version...” 链接,然后您会在浏览器中看到这个用户脚本中的内容,有好几页长。
3. 打开 工具 菜单,Install User Script... 这个菜单项应该可以用了,就点它。
4. 弹出标题为“Install User Script”的对话框,其中显示了将要安装的用户脚本名称,简介以及作用与排除的页面列表。所有这些信息都包含在脚本之中;以后您会学到如何在脚本中用元数据(metadata)来定义它们。
5. 点击 确定,完成安装。

转载者注:对已经下载在本地硬盘的脚本,把这个脚本拖曳进FF窗口,或在FF中 文件-->打开 这个脚本,并使这个脚本显示在前台,再进行3、4、5步骤就可以完成安装。

没 有意外的话,Greasemonkey 会弹出一个提示窗口,写到“Success! Refresh page to see changes.”(安装成功!刷新页面以查看页面变化,) (译者注:在0.6.3中取消了提示窗口,改为了状态栏提示,所以安装时请注意状态栏)

现 在,您可以在Google中任意搜索一些东西。在搜索结果页面的顶部会有一行显示“Try your search on: Yahoo, Ask Jeeves, AlltheWeb, ...”。在其下面会有一个标签显示“Enhanced by Butler”。所有这些东西都是由 Butler 用户脚本添加进去的。

1.4. 管理您的用户脚本

如果您喜欢您能安装许多个 Greasemonkey 脚本。 Greasemonkey 有图解配置对话框处理您的用户脚本: 暂时禁用, 改变他们的配置, 或完全地卸载。

步骤: 暂时禁用 Butler

&10026; 怎样禁用 user script (http://diveintogreasemonkey.org/videos/disable-user-script.html)

1. 从菜单开始,选择 工具 → Manage User Scripts... Greasemonkey 会弹出一个对话框,其标题为“Manage User Scripts”。
(译者注:由于Greasemonkey暂时没有中文版,所以Greasemonkey的界面术语暂不翻译。)
(另一译者注:现在Mozilla Update已经有中文版Greasemonkey (http://mozillaupdate.mozine.org/extensions/moreinfo.php?id=16),后面的我真不知道 该不该翻译成中文...)
2. 在对话框左边的方框是您安装的所有 user script 的列表。(如果您从头到尾按照步骤来的话,这里应该只有一个脚本: Butler)
3. 选中列表中的 Butler 然后取消 Enable 复选框。左边列表中的"Butler"就会由黑色转为灰色。(这样当它选中的时候,就会看起来比较费劲,但是当您安装了很多脚本时就非常有用了。)
4. 点击 确定 退出“Manage User Scripts” 对话框


现 在 Butler 已经安装,但是未被启用。您在Google上随便搜索下就会发现确实如此。在页面顶端的“Enhanced by Butler” 应该没有了。您可以“Manage User Scripts”对话框中重复刚才的步骤,重新选择 Butler 重新选择 Enabled 复选框。
注意
虽然我用暂时(“temporary”)来形容禁用 user script 的动作,但是如果您不重新启用它,它就始终被禁用。之所以是暂时,只因为您可以方便的启用它而不需要再到我的网站上来找原始脚本,而且还要重新安装。

您完全可以用“Manage User Scripts”对话框来卸载脚本。

步骤: 卸载 Butler

&10026; 怎样卸载 user script (http://diveintogreasemonkey.org/videos/uninstall-user-script.html).

1. 在菜单中,选择 工具 → Manage User Scripts.... Greasemonkey 又会弹出“Manage User Scripts” 对话框。
2. 在左边的方框中,选择 Butler 点击 Uninstall。不需要确认,这个 user script 马上就被卸载掉了。
3. 第三步... 没有第三步! (With apologies to Jeff Goldblum.)


先 等一下,还没完呢!您也可以修改您之前安装过的用户脚本的配置。记得您第一次安装Butler时看到的对话框 (http://diveintogreasemonkey.org/install/userscript.html)吗,就是那个有两个“包含的网站 ”和“排除的网站”(sites to include and exclude)列表的?您可以在“管理用户脚本(Manage User Scripts)”对话框中自己修改那些列表,不管是第一次安装时还是在其它什么时候。
(译者注:这两个列表其实就是脚本的执行清单和豁免清单,支持用通配符表示网址。)

让 我们继续,例如,您认为 Butler 不错,但是觉得它在Froogle (http://froogle.google.com/)(Google's product comparison site)上毫无用处。那么,您就可以修改用户脚本配置来排除这个网站,而让它在其它Google网站上仍然起作用。

步骤:重新配置 Butler 以排除 Froogle

&10026; 怎样修改user script配置 (http://diveintogreasemonkey.org/videos/exclude-pages.html).

1. 在菜单中, 选择 工具 → Manage User Scripts.... ,Greasemonkey会弹出“Manage User Scripts”对话框。
2. 在对话框左边的面板中, 选择 “Butler”. 接着在右边的面板中就会显示两个列表,一个是Included pages(“http://*.google.*/*”),另一个是Excluded pages(blank)。
3. 在“Excluded pages” 列表那里点击“Add....”
4. Greasemonkey会弹出另一个标题为“Add Page”的对话框提示你输入网址。在其中输入http://froogle.google.com/*然后点 OK。
5. 在“Manage User Scripts” 的对话框中, “excluded pages list”现在就会有您新添加的地址, http://froogle.google.com/*, “*”表示这个脚本不会在 froogle.google.com 站点的任何页面上执行. “*”被用做为一个通配符,您可以在 URL: 域名/路径中的任何位置使用它,甚至在(http://)中.
6. 点 OK 退出“Manage User Scripts” 对话框。在 “Froogle”中搜索某个字段,确认“Butler”不会被执行。但是,它仍然会在普通搜索、图片搜索的结果中,以及google站点的其他页面中执行。
  评论这张
 
阅读(436)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017