引言

Web背景知识

web三剑客 html + css + javascript

1、html

是用来描述网页的一种语言,它不是一种编程语言,而是一种标记语言(标记标签),总的来说,html使用标记标签来描述网页,本文就用标签来代替标记标签进行说明。

标签是指,

标签里可带有各类属性,最基本的就是class和id。class属性的作用是引用css样式,id的作用是配合javascript使用,具有唯一性。

若想了解更多关于html的资料,请点击这里。

2、css

css的官方名字叫层叠样式表,它的出现是为了解决内容和表现分离的问题,一般存放在.css文件里。

我们在创建UIView之后是不是要给这个UIView设置frame,backgroundcolor等等一些属性, 其实这些属性就是对应这web 中的css, css就是给用html控件添加样式用的.

具体的属性和值可点击这里。

3、javascript

是脚本语言,它是连接前台(html)和后台服务器的桥梁,它是操纵html的能手。

它现在不仅可以做web端了,还可以用来做后台服务端了(node.js),而且还可以用来做移动端了(React Native).但是,在web端中,javascript一般用来处理html中的控件的动作啊,动画啊,改变属性等。

至于js语法介绍,则太过于琐碎,我了解也不多,详情请点击这里

拦截广告实战

网页上的广告一般是站长在网页植入一段js代码,要想屏蔽广告只需要将这些js屏蔽掉即可。

下面示范如何使用chrome屏蔽广告,帮助我们更好了解web广告是如何植入的

1、使用Chrome开发者模式调试(需要选择手机/平板模式)

在chrome 中打开http://m.haodou.com/topic-327282.html?id=327223,按F12进入开发者模式:浏览器设置 -> 更多工具 -> 开发者工具 -> 手机模式

2、在代码中隐藏此广告

实现步骤1后,在切换到控制台标签,如图:

用js代码区获取到要隐藏的控件

点击console -> 在命令行中输入要执行的代码 -> 返回执行结果

命令1:document.getElementsByClassName('adbox')

上面一行代码是获取到html 中class 是’adbox’的控件. 但是可以看见返回值是被[]包围的,这其实是一个数据.

继续获取到我们需要的广告数据

命令2:document.getElementsByClassName('adbox')[0]

对获取到的广告屏蔽掉

命令3:document.getElementsByClassName('adbox')[0].style.display = 'none'

可以发现命令执行完广告也被屏蔽掉了。

上面一行代码就是去改变要隐藏的控件的display属性,将这个css属性改为none,就是不让这个控件显示,这时,我们要隐藏的数据就会自动消失了.

到处为止,我们的js代码就写好了.在这个html页面中执行行代码就可以隐藏广告.但是我们的最终目的是在WebView中执行这行代码就行了.

AdblockPlus 过滤规则

Adblock git 地址:https://github.com/adblockplus

android adblock git地址:https://github.com/adblockplus/libadblockplus-android

项目中打算使用adblock快速集成,那么需要先了解一下adblock的过滤规则。详细的内容官方文档有给出介绍,可以访问一下网址:

https://adblockplus.org/zh_CN/filters

过滤实战

浏览器:Chrome

前提准备:安装adblock plus插件

前往—》更多工具—》扩展程序—》获取更多扩展程序—》搜索Adblock plus安装

安装完毕后进入Adblock过滤设置

EasyList China + EasyList就是常用的一些规则库,目前有adblock维护。除了这些过滤规则,我们同样也可以使用自己的过滤规则,这里为了方便演示,暂时去掉了这两个过滤规则。

下面我们来示范一下如何去掉这种横幅广告,以blog.163.com为例

1、按F12进入调试模式,点击左上角指针定位到该横幅广告

如图所示,其中步骤3获取到的area top-gg-area就是我们想要屏蔽的目标

2、进入adblock自定义规则界面,加入自定义规则163.com##.top-gg-area

3、回到blog.163.com刷新页面查看

可以看到网页上的横幅广告已经被我们屏蔽了。还有更多详细的屏蔽规则可以查看官方文档。

手机网页html怎样阻止广告,Webview拦截广告相关推荐

  1. android自带的webview有广告,android webview 拦截广告

    要想对Webview实现一些高级操作,需要使用WebViewClient,下面是关于Webview的几个常用回调函数: 1.public boolean shouldOverrideUrlLoadin ...

  2. WebView 拦截广告 简单实现

    一:原理 WebView有个setWebViewClient()方法,new一个WebViewClient()的匿名类,里面有两个待重写的方法.其中一个为每次访问前都会回调的方法,在这里面如果待访问的 ...

  3. 手机网页弹窗关不掉_弹窗广告关不掉?这5种方法永久关闭电脑弹窗广告!

    ②找到程序下的[卸载程序],就会出现电脑上基本上安装的软件,找出无用的卸载即可. 02internet 选项设置 windows系统就自带有弹窗限制功能.我们只需要打开系统自带的internet选项, ...

  4. html手机网页不可放大,阻止移动设备(手机、pad)浏览器双击放大网页的方

    点评:这篇文章主要介绍了阻止移动设备(手机.pad)浏览器双击放大网页的方法,需要的朋友可以参考下 现在的手机或平板电脑等移动设备上的浏览器默认都有双击放大的设置,怎么让双击不放大? 在Mobile页 ...

  5. 屏蔽手机网页广告哪家强,还属百度APP

    屏蔽手机网页广告哪家强,还属百度APP,为什么这么说?各大网站站长有话语权 现在很多网站站长都会给自己的网站投放一些网络广告,由于现在都是移动端用户比较多,站长的心思都用在了移动端网站上,使用各大联盟 ...

  6. wap手机网页悬浮广告代码遮盖原有网页内容怎么办?

     wap手机网页广告代码遮盖原有网页内容怎么办? 这个也许是很多weber在做网页页面会遇到的问题,假如是在中间悬浮,最好的办法就是不要用了,这个没有好的解决办法,只要是广告肯定是要给客户看的,不 ...

  7. 如何对手机网页底部悬浮广告代码做翻转效果,这样做就好了

    如何对手机网页底部悬浮广告代码做翻转效果,这样做就好了 首先你要有悬浮层,然后给予CSS赋样式,样式如下: //作者:xycms //update:20190442 //QQ:364500483 va ...

  8. 浏览器设置了打开会显示特定网页为什么还是显示2345_浏览器弹窗广告多?阻止网页弹出广告的三种方法...

    现在的广告可以说是无处不在,无孔不入,我们在打开网页浏览时就会经常遇到些广告弹窗,每次都要去点击关闭,让人觉得非常不爽. 虽然大多第三方浏览器可以安装屏蔽弹窗广告的插件,但今天要给大家介绍下其他禁止网 ...

  9. android html拦截广告,Android WebView拦截iframe标签内部跳转教程

    最近项目里有个广告位需要动态配置,后台给了一段 html 嵌套iframe标签的代码,需要Android拦截iframe内部的跳转,自己做处理. 比如,下面是一段html代码,嵌套这iframe标签, ...

最新文章

  1. 如何做到微信机器人不封号_电销系统是如何做到不封号的?封号对企业有什么影响?...
  2. 【存储过程】从数据库中读取数据保存到文件中
  3. @requestparam map 接收前端的值_前端面试总结篇(初级)
  4. python学习手册 简记
  5. 《那些年啊,那些事——一个程序员的奋斗史》八
  6. 小米笔记本Pro 黑苹果10.15.2记录 不需要焊接,完美支持airdrop、接力、随航
  7. 【Codecs系列】HEVC-SCC(四):SCC IBC句法
  8. linux清理垃圾文件,linux如何清理系统垃圾
  9. Windows应用程序高级控件之月历控件--MonthCalendar控件
  10. warning: ISO C forbids an empty translation unit [-pedantic]
  11. image.fromstream 参数无效原因分析及解决
  12. 俞敏洪在清华终于说实话了·····
  13. BT源代码学习心得(九):客户端源代码分析(图形界面浅析) -- 转贴自 wolfenstein (NeverSayNever)
  14. (论文加源码)基于DEAP的脑电情绪识别(CNN,RNN和两种不同的注意力机制)
  15. 北京大学计算机研究生怎么样,北京大学计算机专业在职研究生怎么样?
  16. html转换txt文本格式方法,hthtml转txtml转换txt文本格式方法
  17. 机器学习与深度学习:微积分知识汇总
  18. 广丰计算机技术学院,广丰区五都镇中学祝晓旺——信息技术教育的拓荒者
  19. springboot出现 Access denied for user ‘‘@‘localhost‘ (using password: YES)
  20. STM 32的USB时钟的配置

热门文章

  1. 深度学习训练技巧总结
  2. 天境生物将在美国圣迭戈建立全新的研发中心 ;泛生子与复星医药签订Seq-MRD独家商业化合作协议 | 医药健闻...
  3. CVPR2018下载+CVPR2018论文百度云+2018CVPR论文下载+2018CVPR百度云
  4. 【Python3爬虫】破解同程旅游加密参数 antitoken-爬虫深度技术
  5. Madcrosoft.PC.TuneUp.Tools.2012.v8.0.043-LAXiTY
  6. 一个人的时候要学会坚强
  7. java:P1157 组合的输出
  8. matlab对曲线等距取点,请问如何在matlab曲线图里面取点
  9. 适老化样板:海尔智家为老人撑起晚年生活“保护伞”
  10. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.cor