免责声明:尝试使用Greasemonkey的新手Javascript编码器;我已经阅读了这些教程,但是对所用的措辞还不够了解,因此我无法专心学习所需的知识。我希望有人能够温和地为我指出我如何实现自己想要的方式。

假设我想制作一个插件,该插件将某些东西应用于nyanit.com或bacolicio.us的效果(例如:http://nyanit.com/google.comhttp://bacolicio.us/http://google.com)。

当我想在页面上应用效果时,我在Javascript中的理解方式是:

<script type="text/javascript">

(function(doc, t) {
    var scr = doc.createElement(t);

    scr.async = true;
    scr.type = 'text/javascript';

    //  scr.src = ??work-in-progress??
    //pseudocode (need to figure this out too): if it's a website that allows framing
    //then apply the nyancat, else don't apply or I'll muck it up.

    var r = doc.getElementsByTagName(t)[0]; r.parentNode.insertBefore(scr, r);
} (document, 'script'));
</script>


所以我想我的问题是:

1)对于Greasemonkey,安装后,我创建了一个文件头//用户脚本信息的文件,后跟空格。我假设我需要做的就是复制我的脚本并将其粘贴到那里,它应该可以工作吗? Greasemonkey应用JavaScript是否有任何限制和限制因素(相对于页面HTML中的限制)?

2)如果我希望它成为Firefox的附件,是this conversion tool reliable还是应该选择Firefox的附件编写实践?

3)如果我希望它成为Chrome的插件,基本上我只是将.js上传到某个地方(例如userscripts.org),而Google应该理想地将其识别为脚本吗?

最佳答案

1)基本上,您是通过XPCNativeWrapper访问网页的,因此您拥有相同的limitations。对于此处的代码,它们都不适用,只需将该代码粘贴到GreaseMonkey脚本中(不带<script>标记)。

2)是的,脚本编译器会正常运行。

3)是的,Chrome开箱即用地支持大多数GreaseMonkey脚本。

关于javascript - 与Firefox/Chrome中的插件相比,Greasemonkey上的Javascript,约束和限制因素?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7298543/

10-11 19:22