8、content-scripts实现一个简单的去除广告插件
一、测试网址 https://www.yy6080.info/
manifest.json
{"manifest_version": 2,"name": "NoAd","version": "1.0.0","description": "","icons":{"16": "icon/icon.png","48": "icon/icon.png","128": "icon/icon.png"},"content_scripts": [{"matches": ["*://www.yy6080.info/*"],"js": ["js/content-scripts.js"],"run_at": "document_end","all_frames":true}],"permissions":["*://www.yy6080.info/*"],"browser_action":{},"options_ui":{"chrome_style": true}
}
二、content-scripts
function getElement(element) {if (element.parentElement === document.body ) {return element} elsereturn getElement(element.parentElement)
}function filter() {for (let i of document.getElementsByTagName('a')) {if (i.href !== "javascript:;" && new RegExp(location.origin).test(i.href) === false) {let element = getElement(i);if(element.className !== "container"){element.remove();}}}for (let i of document.getElementsByTagName('img')) {if (new RegExp(location.origin).test(i.src) === false) {console.log(new RegExp(location.origin).test(i.src))let element = getElement(i);if(element.className !== "container"){element.remove();}}}for (let i of document.getElementsByTagName('video')) {console.log(new RegExp(location.origin).test(i.src))if (new RegExp(location.origin).test(i.src) === false) {let element = getElement(i);if(element.className !== "container"){element.remove();}}}for (let i of document.getElementsByTagName('iframe')) {console.log(new RegExp(location.origin).test(i.src))if (new RegExp(location.origin).test(i.src) === false) {let element = getElement(i);if(element.className !== "container"){element.remove();}}}
}window.onload = function () {filter();}
这种方式在触犯onload事件后,对含有广告的块级元素进行移除,也就是说在触发onload之前,网址上还是可以看到广告的,目前这段代码只能在https://www.yy6080.info/这个网址中用,其他网址要根据其实际情况进行修改
三、去广告前
四、去广告后
8、content-scripts实现一个简单的去除广告插件相关推荐
- 组织结构图插件_一个简单直接的组织结构图插件
组织结构图插件 Vue-orgchart (vue-orgchart) It's a simple and direct organization chart plugin. Anytime you ...
- 去除广告插件多点(a.banner.doubleClick)
最近在开发一个简单的Android应用,用的是Android Studio开发环境,调试程序的过程中,腾讯手机管家总是提示应用有广告插件多点(a.banner.doubleClick).可是开发过程中 ...
- cordova自定义一个简单的alert的插件(android平台)
官网的插件开发文档:http://cordova.apache.org/docs/en/latest/guide/hybrid/plugins/index.html 插件文件布局: 比如我在d盘新建了 ...
- 使用jquery做一个简单的当月日历插件
最近看社区上面或者其他的网站上都有一个签到并且附带签到日历便想着自己动手做一下 实现当月日历的步骤 1.先构思出一个原型,为了方便我使用的table做为容器. 我是参照win10日历准备画一个这样的东 ...
- 【HTML】制作一个简单的浮动广告页面
HTML三分钟实现浮动广告页面 一.程序效果 二.程序实现 一.程序效果 最终实现会在浏览器窗口内自由移动,遇到边界自动反射,程序出于好奇,仅供参考! 二.程序实现 <html><h ...
- js实现一个简单的Chrome刷票插件
国庆想回家~无奈票价高,这几天都在"去哪儿"网关注低价机票.但是靠人工去看实在麻烦,因此我写了一个chrome插件(只支持chrome),可以按照一定频率刷票,当出现期望的机票时可 ...
- java 广告插件_徒手创建一个chrome扩展-屏蔽广告插件
创建一个文件夹,创建以下文件 maniftest.json background.js和 icon图片 maniftest.json文件设置如下 { "name": " ...
- 免费 去除广告插件 chrome浏览器 用的贼爽!!!
链接:点击下载 提取码:6w9x 下载好之后操作: chrome设置栏→找到 更多工具→ 扩展程序 → 把下载好的文件拖到此页面 (需点击开发者模式) 大功告成!刷新即可 喜欢就点个赞 收藏一下吧
- ADGUARD——去除广告利器
浏览网页时总是会看到各种各样的广告,如果不想看到这些烦人的广告应该怎么做呢. 推荐一个无比好用且不要钱的Chrome去除广告插件--ADGUARD 安装: 进入chrome的应用商城页面,搜索ADGU ...
- 实现一个简单的trim函数,用于去除一个字符串,头部和尾部的空白字符
// 实现一个简单的trim函数,用于去除一个字符串,头部和尾部的空白字符 // 假定空白字符只有半角空格.Tab // 练习通过循环,以及字符串的一些基本方法,分别扫描字符串str头部和尾部是否有连 ...
最新文章
- 细粒度情感分析:还在用各种花式GNN?或许只用RoBERTa就够了
- 【深度学习】模型训练过程可视化思路(可视化工具TensorBoard)
- moco 搭建接口mock环境入门
- 容齐的身世_白发容齐真正身份
- MySQL主从同步(复制)
- Linux挂载多个文件夹读不出,FTP不显示Linux挂载文件夹怎么办?-处理FTP不显示Linux挂载文件夹的方案 - 河东软件园...
- 676. 实现一个魔法字典
- MinIO存储桶通知指南 ​​​​​​​
- SingToken全球首款区块链智能AI音乐钱包
- 海淀区第九届单片机竞赛获奖名单_第十二届程序设计竞赛暨ACM选拔赛获奖名单...
- 队列的实现(二) 链式队列的实现
- linux内核奇遇记之md源代码解读之七阵列同步一
- visio中的公式在转换pdf后公式糊掉;word导出pdf时visio丢失模块字体
- 四、PHP处理字符串常用函数
- 云服务器是不是虚拟主机,云服务器不是虚拟主机吗
- HZ视频配音配字幕工具v1.0配音配字幕、影视视频讲解利器
- Step by Step WebMatrix网站开发之二:使用WebMatrix(3)
- Windows驱动开发二:Windbg源码调试
- jquery LigerUI是什么?
- 硬件钱包linux安装,使用Trezor硬件钱包管理Omni版USDT教程