我需要在点击Chrome扩展程序图标时获取当前选项卡的源代码。我也试着用按钮点击事件。请通过我当前的代码:Chrome扩展程序:获取活动标签的源代码
的manifest.json
{ "name": "UM Chrome Extension!", "version": "1.0",
"description": "To ensure the tracking codes present.",
"icons": {
"128": "TW-Extension-Icon2.png"
}, "background": {
"scripts": [ "background.js"]
},
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["popup1.js","jquery-1.10.2.js","jquery-ui.js","bootstrap.min.js"]
}
],
"permissions": [
"activeTab","tabs","contextMenus", "http://*/*"
],
"browser_action": {
"default_popup": "popup.html"
},
"manifest_version": 2
}
popup.html
<!doctype html>
<html class="no-js" lang="">
<head>
<script type="text/javascript" src="popup1.js"></script>
</head>
<body style="width: 600px; height: 300px;">
<button value="Test" id="check-1"> </button>
</body>
</html>
和popup.js
window.addEventListener('DOMContentLoaded', function() {
var fbshare = document.querySelector('#check-1');
fbshare.addEventListener('click', function() {
var htmlCode = document.documentElement.outerHTML;
window.alert(htmlCode);
});
});
如何获得激活的标签的源代码?我需要获取页面的源代码,以便我需要搜索页面是否包含特定的跟踪代码(如GA代码)。
谢谢
请定义“源代码”。你的意思是HTML吗?脚本? CSS? – Makyen
您正在为popup或作为内容脚本加载* popup1.js *。这几乎总是一个坏主意™。你应该只加载它作为一个或另一个。除了库之外的任何脚本文件在这两者之间共享是非常罕见的。 – Makyen
*请不要将jQuery,jQueryUI和BootStrap加载到每个**页面('content_scripts'和''matches''),除非**需要**。 jQuery本身就是最小化代码的85kB。这是放置在每一页上的重要负担。我们这些拥有100个标签的人是什么意思?虽然有可能你真的需要*加载所有这些库,但你应该加载所需的绝对最小*,以允许用户开始与你的扩展进行交互(例如静态图像和事件处理程序W/O库),然后动态加载一旦用户实际与您的扩展进行交互,所有内容 – Makyen