【发布时间】:2013-06-04 19:18:44
【问题描述】:
我想使用 Google Chrome 扩展程序获取网页的链接(URL)。获取链接的问题是 HTML 页面可以实现我想要的,但扩展程序是没有实现相同的代码。我的意思是相同的代码适用于 HTML 网页,但不适用于 Google Chrome 扩展程序,尽管两者都是在 HTML 页面中编码的,但可能存在一些限制,这会阻止我实现代码。
这是我的 HTML 页面。
<html>
<head>
</head>
<body>
<form>
<h1>
LinkLet
</h1>
Email the Link <input type="text" name="myinputbox" class="form1" id="myinputbox"><br>
</form>
</body>
这是我要选择链接的 JS 页面。此页面在浏览器上独立运行时可以工作,但与 Chrome 扩展程序捆绑时无法工作。
chrome.browserAction.onClicked.addListener(function(activeTab)
{
var newURL = "Link.html";
chrome.tabs.create({url: newURL});
});
var url = document.URL;
var elem = document.getElementById("myinputbox");
elem.value = url;
我的清单文件是
{
"background" :{
"scripts" : ["background.js"]
},
"manifest_version" :2,
"name": "My Extension",
"version": "1.0",
"description": "Opens up a local webpage",
"icons": { "1": "1.png" },
"browser_action": {
"default_title": "Hi123",
"default_icon": "1.png"
},
"permissions": [
"tabs"
]
}
【问题讨论】:
-
您的清单文件在哪里?
var url = document.URL;将永远不会获取所需的 URL,如果它位于内容脚本以外的任何其他页面中 -
我也尝试了 tab.url 方法,但它也不起作用。我想在按下扩展按钮/图标之前获取我当前所在页面的 URL。
标签: javascript html google-chrome google-chrome-extension