很多同学可能也有这个需求,用代码如何判断是电脑pc端还是移动手机端,这篇博文也是做一个记录,有需要的同学不妨试试这个。
一、js如何引用
在我们需要的页面引入js该如何引用?代码如下:
<script type="text/javascript" src="//20sl.cn/js/pc.js"></script>
其中pc.js这个文件就是我们的主要内容,前面路径自己设置正确即可,然后这段代码就可以放到需要的位置来实现下方的主要内容啦。
二、判断PC还是手机
直接上代码吧
<script type="text/javascript"> function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase(); if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test(sUserAgent)) { //跳转移动端页面 window.location.href="http://www.yijuv.cn" rel="external nofollow" rel="external nofollow" ; } else { //跳转pc端页面 window.location.href="http://www.toolait.cn" rel="external nofollow" rel="external nofollow" ; } } browserRedirect(); </script>
将上面代码{去掉头和未}新建一个文件如pc.js放进去,修改其中的两个地址,根据需求自由设置即可。
然后在引用即可。哈哈哈嫌麻烦其实直接将上面代码放入指定页面也可以,毕竟这代码并不长...萝卜白菜各取所需吧!
根据上面代码呢,又给大家物色到一段也不错的,方法一致。
//平台、设备和操作系统 var system = { win: false, mac: false, xll: false, ipad: false }; //检测平台 var p = navigator.platform; system.win = p.indexOf("Win") == 0; system.mac = p.indexOf("Mac") == 0; system.x11 = (p == "X11") || (p.indexOf("Linux") == 0); system.ipad = (navigator.userAgent.match(/iPad/i) != null) ? true : false; //跳转语句,如果是电脑就自动跳转到指定页面,或者弹窗提示 if (system.win || system.mac || system.xll || system.ipad) { window.location.href="http://www.toolait.cn"; } else { var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { alert("在手机端微信上打开的"); } else { alert("在手机上非微信上打开的"); } }
三、记录扩展
同理还可以实现不同终端实现不同js,普遍用于广告代码,使用方式和引用js一样。
var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { document.writeln('<script type="text/javascript" src="/uploads/bannertopw.js"><\/script>');//* 这里是微信调用 } else{ var pc = navigator.platform.toLowerCase(); var pcc = pc.indexOf('win') != -1; if (pcc) { document.writeln('<script type="text/javascript" src="/uploads/bannertopp.js"><\/script>');//* 这里是PC调用 } else { document.writeln('<script type="text/javascript" src="/uploads/bannertop.js"><\/script>');//* 这里是手机浏览器调用 } }
同样还可以实现不同域名调用不同js,也是普遍用于广告
比如:我有两个个域名:① toolait.cn ② yijuv.cn
如果当前访问的是toolait.cn域名及域名下页面,则调用a.js
如果当前访问的是yijuv.cn域名及域名下页面,则调用b.js
if(location.host.indexOf("toolait.cn")!=-1) document.write('<script type="text/javascript" src="a.js"></scr'+'ipt>'); if(location.host.indexOf("yijuv.cn")!=-1) document.write('<script type="text/javascript" src="b.js"></scr'+'ipt>');
这段代码也能实现,具体请自测,引入js和上面这个一样
name=window.location.host; //获取当前域名 name=name.toLowerCase() //将大写字母转换小写 if (name.indexOf("baidu.com")>0) //如果是baidu.com document.write('<script type="text/javascript" src="a.js"></script>') else if (name.indexOf("google.com")>0) //如果是google.com document.write('广告代码2') else //其他 document.write('广告代码3')
同理下面也能实现不同终端跳转到指定地址
var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { window.location.href = "http://www.toolait.cn"; //* 这里是微信调用 } else{ var pc = navigator.platform.toLowerCase(); var pcc = pc.indexOf('win') != -1; if (pcc) { window.location.href = "http://www.20sl.cn"; //* 这里是PC调用 } else { window.location.href = "http://www.yijuv.cn"; //* 这里是手机浏览器调用 } }
分享几段小代码,灵活使用有意想不到的结果哟~
//引用此代码可以跳转到指定页面 var dumplist=["https://www.20sl.cn"]; var n=Math.floor(Math.random()* dumplist.length + 1)-1; //var p=alert(Arr[n]); window.location.href=dumplist[n];
//来路若是指定地址 再继续访问指定地址 host = window.location.host; if (host=="yijuv.cn" || host=="tv.yijuv.cn" ) { window.location.href='https://www.yijuv.cn'; }
js弹出提示确认就跳转指定页面取消则关闭或继续访问原地址
<script type="text/javascript"> if(confirm("确认?")){ location.href="https://www.yijuv.cn/"; }else{ //window.close(); //上面这个启用则点击取消关闭网页 } </script>