我有一个 chrome 扩展,可以更轻松地向用户展示 Google 翻译。如果用户想在新窗口中查看翻译,则有一个选项。为了在新窗口中显示翻译页面,我想向用户显示一个紧凑的翻译页面。我想更改 USER-AGENT 以向用户显示 Google 翻译的移动版本。
我试过这个,这是我打开新窗口的功能,但窗口的用户代理没有改变,我不知道如何解决这个问题:
function OpenURL(url, tab)
{
if(config.tab=="true")
{
var id = tab.index +1;
chrome.tabs.create({'url': url, 'index': id});
}
else
{
chrome.webRequest.onBeforeSendHeaders.addListener(
function(info) {
// Replace the User-Agent header
var headers = info.requestHeaders;
headers.forEach(function(header, i) {
if (header.name.toLowerCase() == 'user-agent') {
header.value = 'Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10';
}
});
return {requestHeaders: headers};
},
// Request filter
{
// Modify the headers for these pages
urls: [
"*translate.google.com*",
],
// In the main window and frames
types: ["main_frame", "sub_frame"]
},
["blocking", "requestHeaders"]
);
newwindow = window.open(url, "_blank", "resizable=yes, scrollbars=yes, titlebar=yes");
}
}
谁能帮我?