欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

如何实现移动端浏览器不显示 pc 端的广告_javascript技巧

程序员文章站 2022-05-19 22:30:23
...
前一段时间写了一篇博文, 关于微信内置浏览器不显示联盟广告

根据 window.navigator.userAgent 来判断当前浏览器是否是微信内置浏览器

window.navigator.userAgent=='micromessenger'

今天要分享的内容差不多,因为之前只考虑了微信浏览器的适配,回头在移动端浏览器打开站点,发现适配问题.
有的联盟会自动屏蔽移动端,但是有的联盟就不能屏蔽,所以只能手动去判断.

根据浏览器 userAgent 判断来源

安卓设备的的 userAgent 判断

navigator.userAgent.match(/Android/i)

iphone 设备 userAgent 判断

navigator.userAgent.indexOf('iPhone')!=-1

ipad 设备 userAgent 判断

navigator.userAgent.indexOf('iPad') != -1

ipod 设备 userAgent 判断

navigator.userAgent.indexOf('iPod') != -1

再补充下微信内置浏览器的判断方法

function isWeiXin() {
    var ua = window.navigator.userAgent.toLowerCase();
    if (ua.match(/MicroMessenger/i) == 'micromessenger') {
      return true;
    } else {
      return false;
    }
 }

屏蔽微信,手机(除 winphone 设备),ipod

 if(!isWeiXin()&&!(navigator.userAgent.match(/Android/i) || (navigator.userAgent.indexOf('iPhone') != -1) || (navigator.userAgent.indexOf('iPod') != -1) || (navigator.userAgent.indexOf('iPad') != -1))) {
     var sogou_ad_id=4767753;  //联盟广告计费id
 }
 //广告内容加载

如果没有联盟广告计费id,下面的广告自然不会展示.间接起到了移动端屏蔽联盟广告的作用.