如何编写firefox扩展,在firebug的页面上下文中运行javascript代码

时间:2010-06-07 16:26:57

标签: javascript firebug firefox-addon

我知道出于安全原因,这并不容易实现,但是有一种方法可以像firebug那样做...

请帮忙,想在页面的上下文中调用一些脚本来实现一些效果......

基本上,我想实现两个功能: 1.如果尚未存在,则自动将jQuery添加到任何网页。 2.当打开某个地址时,调用该页面的方法自动通知服务器。 (页面的ajax功能)

我试图注射身体,没有运气。 试图获取窗口对象,但无法调用该函数。

将尝试将位置更改为:javascript:alert('test inject');

很多人。

2 个答案:

答案 0 :(得分:2)

好的,在阅读了一些官方文档和GreaseMonkey的来源之后,我得到了以下基本适用于我的方法。

希望能节省某人的时间:

var appcontent = document.getElementById("appcontent");   // browser  
    if (appcontent) {
         appcontent.addEventListener("DOMContentLoaded", function (evnt) {
            var doc = evnt.originalTarget; 
            var win = doc.defaultView;
            var unsafeWin = win.wrappedJSObject;

            // vote.up is the function on the page's context
            // which is take from this site as example
            unsafeWin.vote.up(...);
         }, true);
    }
}

答案 1 :(得分:1)

Greasemonkey这样做。如果您正在开发具有类似功能的扩展程序,则可以使用Components.utils.evalInSandbox