我有一个 Chrome 扩展程序,当您单击该图标时,它会显示一个文本字段和一个按钮,用于搜索。显示的内容基本上是从清单中调用的 HTML 文档,如下所示:
"browser_action": {
"default_popup": "popup.html"
}
现在,问题是如何使用 javascript 访问浏览器中加载的当前文档?因为我想从文本字段中提取问题,然后去当前文档中查找答案。
谢谢!
编辑1:
代码:
清单.json
{
"name": "SmartSearch",
"version": "1.0",
"manifest_version": 2,
"description": "Smart Search extension for Google Chrome.",
"content_scripts":
[
{
"matches": ["<all_urls>"],
"js": ["smartsearch.js"]
}
],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
}
}
智能搜索.js
SmartSearch() = function (){
var x = document.title;
alert(x);
}
window.onload = SmartSearch;
popup.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Smart Search</title>
<script type="application/javascript" src="smartsearch.js"></script>
</head>
<body>
<p>Smart Search</p>
<form>
<input type="text" id="search_text_field"></input>
<input type="button" id="search_button" value="Search"/>
</form>
</body>
</html>
现在,我要做的就是在按下扩展图标时显示当前加载页面的标题,只是为了检查我是否可以访问 DOM。问题是我得到了弹出窗口的标题。解决方案是什么?
EDIT2: 我看到如果我转到一个页面,在加载时确实会出现带有页面标题的警报(有一些例外,比如 youtube 页面),但是当我按下扩展程序的图标时我想这样做.