-
您可以在Greasemonkey脚本库,找到许多用户脚本。尽管没人要求您必须把脚本放到那儿去,但是实际上,您可以把您的脚本共享到任何地方,这样别人就可以安装它了。甚至您根本不需要一台网络服务器,因为你可以从本地文件中安装用户脚本。 1.3. 安装用户脚本
-
元数据可以以任意次序排列。笔者推荐使用
@name,@namespace,@description,@include,最后是@exclude,但是其它的顺序也没关系。 2.2. 用元数据描述您的用户脚本 -
在“管理用户脚本”对话框中,点击Edit,您正在“动态”修改脚本的副本,它在 Firefox 的个人配置文件夹中。我形成了一个习惯,每“动态”修改完毕,又回到编辑器,选择文件(F) → 另存为(a)...,把用户脚本保存到另一个文件夹中。尽管这不是必须的(Greasemonkey 只会用您配置文件夹中的那个脚本),但是我喜欢在完成全部修改后把脚本在其它文件夹里保存一个“原本”。 2.4. 修改用户脚本
-
在错误控制台中可以用右键(Mac用户用 control-click)点击任意行选中,然后选择复制(C),将信息复制到剪贴板。 3.2. 用
GM_log记日志 -
如果已有一个元素的引用(例如
thisElement),可以用thisElement.nodeName来判断它的 HTML 标签。如果页面被当作text/html类型,标签名称就总是大写,不论它在原始页面是如何定义的。如果页面被当作application/xhtml+xml类型,那么标签名称就总是小写的。我总是用thisElement.nodeName.toUpperCase()这样我就可以不用管这些了。 4.6. 操作所有有特定属性的元素 -
即使
someExistingElement是它的父元素的最后一个孩子(在它之后没有下一个元素),仍然可以在someExistingElement.nextSibling之前插入新内容。在这种情况下,someExistingElement.nextSibling将返回一个空值,insertBefore函数将把新内容追加到最后。(以许这对你来说没有太大意义,但我想让您知道的是,尽管这种方法似乎是不太对,但它却总是有效的。) 4.8. 在元素后插入内容 -
使用
data:URI kitchen 来建立您自己的data:URLs。 4.12. 在没有服务器的情况下添加图片 -
可以使用
addGlobalStyle函数样式化插入到页面中的元素或者部分原页面中已有的元素。然而,如果要样式化已有的元素,应该在您定义的每条规则上使用! important关键字,保证您的样式覆盖原页面中已定义的规则。 4.13. 添加 CSS 样式 -
删除和替换
document.body.innerHTML并不会更改页面。原页面在<head>中定义的所有内容仍然是有效的,包括页面的标题,CSS 样式,以及脚本。可以分开修改或者移除。 4.16. 处理已渲染的页面 -
正常情况下,当用户提交一个表单时,例如,点击表单中的 提交 按钮或者按
回车键),都会触发submit事件。但是,当脚本调用aForm.submit()提交表单时,却不会触发submit事件。因此,您必须做两件事来捕获表单的提交事件:给submit事件增加事件监听,并且修改HTMLFormElement类的原型来重定向submit()方法到您的自定义函数上。 4.22. 覆盖内建的 Javascript 方法 -
访问
about:config,然后再过滤器中填greasemonkey.scriptvals,就可以查看已存储的配置值。 GM_getValue -
当您在本书中看到“参考资料”链接列表时,您可以点“参考资料”的标题就可以跳转到这个所有参考资料链接清单。 “参考资料”链接清单
-
当您在本书中看到技巧或者警告时,您可以点击前面的提示小图标,然后跳转到此页。 技巧清单
-
当您在本书中看到视频的链接时,点击提示
小图标,可以跳转到全部视频清单。 步骤清单