簡體   English   中英

如何在Android上的Firefox插件中的沙箱中使用回調?

[英]How to use callback in sandbox in firefox add-on on android?

我想在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發送結果。

var javascript = readFileContent();
var sandbox = new Components.utils.Sandbox(window);
sandbox.window = window;

Components.utils.evalInSandbox(javascript, sandbox);

sandbox.theMethodYouNeedToCall();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM