从具有chrome扩展名的网页中删除图像
Removing an Image from a web page with chrome extension
我正在尝试编写一个简单的谷歌chrome扩展,它可以从stackoverflow.com网站上删除stackoverflow徽标。但它不起作用。
这是我的作品。
manifest.json
{
"manifest_version": 2,
"name": "Transpose",
"description": "Extension to switch images",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": [
"activeTab"
]
}
popup.html
<!doctype html>
<html>
<head>
<title>Transpose</title>
<script src="jquery-1.11.3.min.js"></script>
<script src="popup.js"></script>
</head>
<body>
<h1>Transpose</h1>
<button id="btnEnable">Enable Add-on</button>
</body>
</html>
popup.js
document.addEventListener('DOMContentLoaded', function () {
chrome.tabs.getCurrent(function (tab) {
//alert(tab.title);
$('#btnEnable').on('click', function () {
$('#hlogo').remove();
});
});
}, false);
有人能帮我找出错误吗?
请记住,此代码与页面其他部分不是在同一环境中运行的。这是它自己的html页面,有自己的DOM、事件处理程序等。您需要将脚本注入stackoverflow页面,您可以从这里学习如何执行此操作。
您不能使用chrome.tabs.getCurrent
,因为您是从弹出窗口调用它的。Popup不是一个选项卡,它会给你undefined
。。
事实上,你不需要得到当前的选项卡。你需要做的是调用chrome.tabs.executeScript
,比如:
chrome.tabs.executeScript( { code: "$('#hlogo').remove();" } );
为此,您需要"activeTab"
权限和"https://stackoverflow.com"
跨源权限。
相关文章:
- 使用Javascript从整个网页中删除具有特定类的所有span标记
- 如何删除在PHP中打印网页时显示的URL
- 如果用户选择离开网页,如何删除记录
- 当用户向下滚动我的网页时,如何删除chrome地址栏周围的边框
- 如何使用javascript从网页中删除HTML元素?(试图制作镀铬扩展)
- 删除不需要的javascript和css是否包括减轻网页加载时间
- 如何向下跳转网页而不删除网站的其余部分
- 如何从网页中删除外来字符
- 内容可编辑 - JQuery 仅将内容保存到网页(以及添加和删除)
- Javascript 函数创建自己的 ,但在此过程中删除网页上的所有其他
- 如何从网页上的 javascript 文件中删除 html 标记
- 如何从我的网页中删除一些 JavaScript
- 加载后删除网页音频
- 从具有chrome扩展名的网页中删除图像
- 从R中的javascript(网页)中删除xls文件
- 使用javascript从网页中删除不需要的html内容
- 如何删除侧边栏以使网页更具响应性
- 从网页中删除.htm的javascript示例
- 如何从网页中删除所有javascript和js调用
- 我想从网页中自动删除验证码