js实现pc和手机的判断

如果你不太会自适应,不能把pc端和手机端的网页都用同一个html页面,那就就必须写两个站(PC用www域名,手机用wap二级域名),一个PC,一个手机,那么如何做到识别用户是PC客服端还是手机客户端登陆的你网站的呢(并且能够实现在手机端输入www域名的时候不加载PC端的网页直接跳转到手机端的网页),这就需要js来对客户端的系统进行判断

我这里有三段代码,都可以实现这个效果用法一样,优劣如何,就看你的需求如何

 不过,这里也有2个疑问点,请先看代码,我后面再解答

1.

<script type=“text/javascript”>

function IsPC() {

var userAgentInfo = navigator.userAgent;

var Agents = ["Android", "iPhone",

"SymbianOS", "Windows Phone",

"iPad", "iPod"];

var flag = true;

for (var v = 0; v < Agents.length; v++) {

if (userAgentInfo.indexOf(Agents[v]) > 0) {

flag = false;

break;

}

}

return flag;

}

</script>

2.

<script type=“text/javascript”>

function browserRedirect() {

var sUserAgent = navigator.userAgent.toLowerCase();

var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";

var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";

var bIsMidp = sUserAgent.match(/midp/i) == "midp";

var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";

var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";

var bIsAndroid = sUserAgent.match(/android/i) == "android";

var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";

var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";

if (!(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) ){

window.location.href=B页面;

}

}

browserRedirect();

</script>

3

<script type=“text/javascript”>

var system ={

win : false,

mac : false,

xll : 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);

//跳转语句

if(system.win||system.mac||system.xll){

window.location.href="http://www.weishengyule.cn";

}else{

window.location.href="http://wap.weishengyule.cn";

}

</script>

疑问:js脚本都是在HTML页面加载完毕后才运行的,我这样做会不会出现在手机端输入PC端网页的域名会先完全加载完毕网页才跳转到手机端的网页

情景一:会出现完全加载后才跳转到手机端网页

原因:1.你没有把代码放在head的第一行    2.你用外部文件加载进来的

情景二:不会出现以上的情况,直接进入手机端网页

方法:直接用<script type="text/javascript">代码</script> 这样的方式,就不会出现问题

疑问二:谁优谁劣

个人喜欢第三个

原因:用变量的方式来给函数命名,理论上会直接加载他来运行【依据,我师傅说的】,个人感觉三个的效果都没差别

js实现pc和手机的判断

时间: 2024-11-09 02:17:56

js实现pc和手机的判断的相关文章

【转】Nginx区分PC或手机访问不同网站

原文链接:http://www.nginx.cn/784.html 近几年来,随着手机和pad的普及,越来越多的用户选择使用移动客户端访问网站,而为了获取更好的用户体验,就需要针对不同的设备显示出最合适的匹配,这样就是近年来流行的“响应式web设计”. 响应式web设计是一种纯前端技术js.css等实现的针对不同设备访问同一网址看到不同的布局,是页面内容更适合当前设备阅读.但这个不是本文的重点,重点还是放在nginx如何实现上来. 本文要讲的的是如何使用nginx区分pc和手机访问不同的网站,是

Nginx区分PC或手机访问不同网站

近几年来,随着手机和pad的普及,越来越多的用户选择使用移动客户端访问网站,而为了获取更好的用户体验,就需要针对不同的设备显示出最合适的匹配,这样就是近年来流行的“响应式web设计”. 响应式web设计是一种纯前端技术js.css等实现的针对不同设备访问同一网址看到不同的布局,是页面内容更适合当前设备阅读.但这个不是本文的重点,重点还是放在nginx如何实现上来. 本文要讲的的是如何使用nginx区分pc和手机访问不同的网站,是物理上完全隔离的两套网站(一套移动端.一套pc端),这样带来的好处p

JS读取UserAgent信息并做判断

JS读取UserAgent信息并做判断 userAgent信息可以由navigator.userAgent拿到.例子: <script type="text/javascript"> document.writeln("navigator.userAgent: " + navigator.userAgent + "<br />"); document.writeln("navigator.appName: &qu

JS 一些功能代码块[如判断设备]

判断是否为PC 来源:http://blog.csdn.net/seven1276/article/details/8211877 function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("Android", "iPhone", "SymbianOS", "Windows Phone", "iPad"

Nginx配置网站适配PC和手机

考虑到网站的在多种设备下的兼容性,有很多网站会有手机版和电脑版两个版本.访问同一个网站URL,当服务端识别出用户使用电脑访问,就打开电脑版的页面,用户如果使用手机访问,则会得到手机版的页面. 1.判断客户端的设备类型 要想让网站适配PC和手机设备,首先要能做出准确的判断.HTTP请求的Header中的User-Agent可以区分客户端的浏览器类型,可以通过User-Agent来判断客户端的设备. 无论是PC还是手机,由于操作系统.浏览器的多样性,自己来实现这个判断并不容易.好在国外有一套开源的通

Js获取当前日期时间+日期印证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天

Js获取当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+JS判断某年某月有多少天 字符串转日期型+Js当前日期时间+日期验证+判断闰年+日期的天数差+日期格式化+日期所在年的第几周 日期时间脚本库方法列表Date.prototype.isLeapYear 判断闰年Date.prototype.Format 日期格式化Date.prototype.DateAdd 日期计算Date.prototype.DateDiff 比较日期差Date.prototype.toString 日期转字符

js方法内Ajax请求数据判断,验证无效(OnClientClick=&quot;return Method();&quot;),还是直接执行后台代码

function CheckAdd() { var flag = true; $.ajax({ cache: false, async: false, url: "/ajaxpage/getajax.aspx?t=adjserviceclientlist&Cellphone=" + Cellphone + "&a=" + Math.random(), dataType: 'json', success: function (data) { if (d

JS 对基本类型和引用类型的判断

啰啰嗦嗦写了很多,把原本几句话就可以交待的东西扯得那么长.. 但在我曾经对这个问题感到困惑时,就希望能找到让我知其然并知其的讲解. 限于自己的知识和文章篇幅,我无法讲得多么细致,甚至不能保证正确性. 我只能把自己对js的理解写出来,大家可以批判着看. 着急找答案的朋友可以直接翻到后面看总结.. ------------------------------------------------------------------------------------------------------

JS学习笔记--仿手机发送内容交互

学习JS笔记----记录上课中学习的知识点,分享下老师教的内容: 1.html内容 <div id="box"> <div id="message"> <!--<p class="left"> <img src="img/136.jpg" /> <span>这是第一句话</span> </p> <p class="righ