2010-04-08 78 views
12

我想为Firefox上的一个greasemonkey类型的脚本在页面上的脚本之前运行。 Greasemonkey脚本在页面上的脚本之后运行,因此不起作用。我需要这个的原因是因为我想编辑页面上的一个脚本。具体来说,我想删除一个强制页面加载到框架中的脚本,因为框架中的页面会中断F5(按F5会使页面跳回到首页,而不是重新加载当前页面)。另外,我不想通过AJAX代理加载页面,切换到chrome/opera也不是一个选项。我在想也许Jetpack附加组件可以工作,但它似乎只有与greasemonkey使用的相同的事件,DOMContentLoaded。有任何想法吗?如何在任何内联脚本在网页上运行之前运行用户脚本?

+0

**如果** Opera是一个选项,那么您可以简单地将您的'* .user.js'文件重命名为'* .js',并且它会在任何内容甚至开始加载之前运行。 – c69 2011-12-18 00:47:31

+0

我知道,但我不使用歌剧作为我的浏览器。由于我对firefox进行了高度个性化的设置,因此切换和仍然拥有我想要的一切方式可能是不可能的。仅为1个站点安装和使用其他浏览器似乎有点愚蠢。 – Telanor 2011-12-18 03:33:51

回答

6

[编辑2013]使用附加SDK的page-mod模块,contentScriptWhen = start


年长

: 右键,只有更新的Firefox的建立(目前3.7 nighlies,以后可能会被添加到3.6.x的)对内容指定的脚本之前运行自定义脚本的支持。 I wrote a prototype Jetpack-SDK module可以利用新的通知。

它是<脚本src>还是内联脚本?在前一种情况下,它可以被内容策略阻止(类似于adblock)。

+0

有趣。我会看看我是否可以弄清楚如何让它起作用。该脚本是一个内联脚本。 – Telanor 2010-04-10 01:59:03

+0

您可以添加对@Telanor所要求的示例的引用吗? – 2013-04-05 23:51:03

+0

@jaime:编辑答案以指向page-mod模块。 – Nickolay 2013-04-06 11:19:42

相关问题