Firefox:Dive Into Greasemonkey/3.2. Logging with GM log
Mozilla中文Wiki
您的位置:Dive Into Greasemonkey → 调试用户脚本 → 使用 GM_log 作记录
[编辑]
3.2. 使用 GM_log 作记录
Greasemonkey 提供了一个记录用的函数,GM_log ,这个函数允许您将消息写入 JavaScript 控制台。这些消息在发布前时应当被剔出的,不过他们在调试的时候却很有帮助。另外,看调试信息也比不断的点击调试过程中出现的警告信息更好。
GM_log 只有一个参数,就是需要被记录的字符串。在将信息输出到 JavaScript 控制台后,用户的脚本会像往常一样运行。
例子: 记录到 JavaScript 控制台然后继续 (gmlog.user.js (http://diveintogreasemonkey.org/download/gmlog.user.js))
if (/^http:\/\/diveintogreasemonkey\.org\//.test(window.location.href)) {
GM_log('running on Dive Into Greasemonkey site w/o www prefix');
} else {
GM_log('running elsewhere');
}
GM_log('this line is always printed');
如果您安装了这个用户脚本并且打开 http://diveintogreasemonkey.org/ 的话,下面这两行就会出现在JavaScript控制台。
Greasemonkey: http://diveintomark.org/projects/greasemonkey//Test Log: running on Dive Into Greasemonkey site w/o www prefix Greasemonkey: http://diveintomark.org/projects/greasemonkey//Test Log: this line is always printed
正如您所看到的,Greasemonkey 首先使用了从原数据中获得的名字空间和脚本名,然后是您传递给 GM_log 的参数。
如果您访问的不是 http://diveintogreasemonkey.org/ ,而是其它网站,那么下面这两条信息就会在 JavaScript 控制台显示。
Greasemonkey: http://diveintomark.org/projects/greasemonkey//Test Log: running elsewhere Greasemonkey: http://diveintomark.org/projects/greasemonkey//Test Log: this line is always printed
尽管我已经尝试去发现记录信息的最大长度,不过我失败了,我可以说的是它超过255个字符。还有,输出的信息在 JavaScript 控制台里可以被正确的断行,所以您可以使用滚动来查看剩余的消息。为记录函数发狂吧!
| 在JavaScript控制台中可以使用右键(苹果机用户使用 control - click)点击任意行并选择拷贝,将信息拷贝到剪贴板中。 |
参见

![[首页]](/stylesheets/images/wiki.png)