2013-01-15 69 views

回答

0

你应该在你打开的标签的URL中传递你的参数,这绝对是最简单的方法。

openTab("chromeTab", { chromePage: "chrome://yourext/content/foo.html?foo=bar" }); 

这里是你可以用它来轻松地将当前的URI参数映射到一个javascript字典例行:

/** 
* Takes the <b>entire</b> query string and returns an object whose keys are the 
* parameter names and values are corresponding values. 
* @param aStr The entire query string 
* @return An object that holds the decoded data 
*/ 
function decodeUrlParameters(aStr) { 
    let params = {}; 
    let i = aStr.indexOf("?"); 
    if (i >= 0) { 
    let query = aStr.substring(i+1, aStr.length); 
    let keyVals = query.split("&"); 
    for each (let [, keyVal] in Iterator(keyVals)) { 
     let [key, val] = keyVal.split("="); 
     val = decodeURIComponent(val); 
     params[key] = val; 
    } 
    } 
    return params; 
} 

(警告:这是Mozilla的特定的JavaScript)

+0

非常感谢乔纳森。我已经尝试过类似的东西,但我使用“&”而不是“?”显然雷鸟有问题。 – user1476961