我想以最简单的方式做到这一点,我不介意它是否允许元素加载然后隐藏它。基本上我想做的不同于以前为YouTube评论拦截器所做的事情,但我无法弄清楚如何实际获得我的扩展来阻止评论。我知道有限的HTML / CSS / JavaScript,但我不知道从哪里开始。我已经知道需要从页面中一致地删除哪些元素,但不知道如何告诉chrome隐藏它们。
编辑:如果可能的话,我会根据他们的<div>
对HTML中的某些部分进行博客。
答案 0 :(得分:4)
以下是我的Facebook广告停用程序:
的manifest.json
{
"name": "Facebook Ads Disabler",
"version": "0.0.1",
"description": "Disable side ads on facebook! By Alexander Piechowski.",
"content_scripts": [
{
"matches": [
"http://*.facebook.com/*","https://*.facebook.com/*"],
"js": ["main.js"],
"run_at": "document_end",
"all_frames": true
}
]
}
main.js
function remove(){
try
{
document.getElementById('pagelet_ego_pane_w').innerHTML = '';
}
catch(err)
{
//Skip if "pagelet_ego_pane_w" div tag isn't on this page
}
try
{
document.getElementById('pagelet_ego_pane').innerHTML = '';
}
catch(err)
{
//Skip if "pagelet_ego_pane" div tag isn't on this page
}
try
{
document.getElementById('pagelet_side_ads').innerHTML = '';
}
catch(err)
{
//Skip if "pagelet_side_ads" div tag isn't on this page
}
try
{
document.getElementById('fbPhotoSnowliftAdsSide').innerHTML = '';
}
catch(err)
{
//Skip if "fbPhotoSnowliftAdsSide" div tag isn't on this page
}
console.log('All ads have been removed.');
setTimeout(function(){remove();},2000);
}
remove();
这使得ID的所有内部完全空白,并且每当我在facebook中转到新页面时每2秒重新运行一次。