Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在android上的firefox插件的沙盒中使用回调?_Javascript_Android_Firefox_Callback_Firefox Addon - Fatal编程技术网

Javascript 如何在android上的firefox插件的沙盒中使用回调?

Javascript 如何在android上的firefox插件的沙盒中使用回调?,javascript,android,firefox,callback,firefox-addon,Javascript,Android,Firefox,Callback,Firefox Addon,我想在android上的firefox附加程序中执行javascript代码。如何从js代码中调用主页脚本的方法 主要代码: function execJavaScript(aWindow, itemId, password) { var xmlHttpPost = new aWindow.XMLHttpRequest(); if (xmlHttpPost.overrideMimeType) xmlHttpPost.overrideMimeType('text/

我想在android上的firefox附加程序中执行javascript代码。如何从js代码中调用主页脚本的方法

主要代码:

function execJavaScript(aWindow, itemId, password) {
    var xmlHttpPost = new aWindow.XMLHttpRequest();

    if (xmlHttpPost.overrideMimeType)
        xmlHttpPost.overrideMimeType('text/html');
    xmlHttpPost.open( 'POST', 'http://localhost:'+port+'/home.html?msgfill='+itemId+'msgpasswd='+password, false);

    xmlHttpPost.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlHttpPost.send('msg=hello');

    // execute received javascript
    var javascript = xmlHttpPost.responseText;

    try {
        // try to execute received javascript
        evalInSandbox(aWindow, javascript);
    } catch(e) {
        showToast(aWindow, e.message);
    }
}

function callBackFromLoadedJS(String result) {
    Console.log("Callback result = " + result);
}

我想发送来自javascript的结果。

好问题您可能会更幸运地在ask.mozilla.org上得到答案,他们正在处理这些问题。
var javascript = readFileContent();
var sandbox = new Components.utils.Sandbox(window);
sandbox.window = window;

Components.utils.evalInSandbox(javascript, sandbox);

sandbox.theMethodYouNeedToCall();