老早之前我发了一个如何让广告只在手机上显示或者只在PC上显示,但是之前的文章没了,所以还是有很多人在问我.刚好今天给一个客户弄了,顺便发一下改良版的代码.

//平台、设备和操作系统  
    var system ={  
        win : false,  
        mac : false,  
        xll : false  
    };  
    //判断系统  
    var p = navigator.platform;  
     
    /**var sUserAgent = navigator.userAgent.toLowerCase(); 
    alert(sUserAgent);*/  
      
    system.win = p.indexOf("Win") == 0;  
    system.mac = p.indexOf("Mac") == 0;  
    system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);  
    //跳转语句  
    if(system.win||system.mac||system.xll){ 
        //pc端广告代码
    }else{  
        //手机端广告代码
    }

其实也可以可以用百度的代码来写个判断,算了,有时间再弄.

2020年5月26日 02:19:02 更新两个

1.用CSS来控制.

<style type="text/css">
.pc_acmsd{display:block;}
.m_acmsd{ display:none}
@media(max-width:768px) {
.pc_acmsd{display:none !important;}
.m_acmsd{display:block !important;}}
</style>
<div class="pc_acmsd">此处放入显示在电脑上的广告代码</div>
<div class="m_acmsd">此处放入显示在手机上的广告代码</div>

上面CSS的意思:

display:block 这是显示的意思

display:none 这是隐藏的意思

@media(max-width:768px) 判断页面宽度小于768PX的时候显示后面{ }的样式。

2.JS方法二

var url = location.search;
url = url.substr(1);
var bs = {
    versions: function () {
        var u = navigator.userAgent,
            app = navigator.appVersion;
        return {
            trident: u.indexOf('Trident') > -1,
            presto: u.indexOf('Presto') > -1,
            webKit: u.indexOf('AppleWebKit') > -1,
            gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,
            mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/),
            ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
            android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
            iPhone: u.indexOf('iPhone') > -1,
            iPad: u.indexOf('iPad') > -1
        };
    }(),
    language: (navigator.browserLanguage || navigator.language).toLowerCase()
}