热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

js判断PC端或移动端及浏览器类型

判断是否pc还是移动​if((navigator.userAgent.match((phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mob

 

判断是否pc还是移动


if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) {alert('手机端')
}else{alert('PC端')
}​

判断是什么类型的浏览器

 

function(){return {isSafari: (navigator.userAgent.indexOf('Safari')>=0 || navigator.userAgent.indexOf('WebKit')>=0)? true:false,isOpera: (window.opera && navigator.userAgent.indexOf('Opera')>=0)? true:false,isChrome:(navigator.userAgent.indexOf('Chrome/')>=0 && navigator.userAgent.indexOf('WebKit')>=0)? true:false,domAPI:(document && document.createElement)? true:false,isMac:(navigator.userAgent.indexOf('Mac')>=0)? true:false,}
}

其他方式:

第一种,只区分浏览器,不考虑版本


function myBrowser(){var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串var isOpera = userAgent.indexOf("Opera") > -1;if (isOpera) {return "Opera"}; //判断是否Opera浏览器if (userAgent.indexOf("Firefox") > -1) {return "FF";} //判断是否Firefox浏览器if (userAgent.indexOf("Chrome") > -1){return "Chrome";}if (userAgent.indexOf("Safari") > -1) {return "Safari";} //判断是否Safari浏览器if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) {return "IE";}; //判断是否IE浏览器
}//以下是调用上面的函数
var mb = myBrowser();
if ("IE" == mb) {alert("我是 IE");
}
if ("FF" == mb) {alert("我是 Firefox");
}
if ("Chrome" == mb) {alert("我是 Chrome");
}
if ("Opera" == mb) {alert("我是 Opera");
}
if ("Safari" == mb) {alert("我是 Safari");
}

第二种,区分浏览器,并考虑IE5.5 6 7 8

function myBrowser(){var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器var isFF = userAgent.indexOf("Firefox") > -1; //判断是否Firefox浏览器var isSafari = userAgent.indexOf("Safari") > -1; //判断是否Safari浏览器if (isIE) {var IE5 = IE55 = IE6 = IE7 = IE8 = false;var reIE = new RegExp("MSIE (\\d+\\.\\d+);");reIE.test(userAgent);var fIEVersion = parseFloat(RegExp["$1"]);IE55 = fIEVersion == 5.5;IE6 = fIEVersion == 6.0;IE7 = fIEVersion == 7.0;IE8 = fIEVersion == 8.0;if (IE55) {return "IE55";}if (IE6) {return "IE6";}if (IE7) {return "IE7";}if (IE8) {return "IE8";}}//isIE endif (isFF) {return "FF";}if (isOpera) {return "Opera";}
}//myBrowser() end
//以下是调用上面的函数
if (myBrowser() == "FF") {alert("我是 Firefox");
}
if (myBrowser() == "Opera") {alert("我是 Opera");
}
if (myBrowser() == "Safari") {alert("我是 Safari");
}
if (myBrowser() == "IE55") {alert("我是 IE5.5");
}
if (myBrowser() == "IE6") {alert("我是 IE6");
}
if (myBrowser() == "IE7") {alert("我是 IE7");
}
if (myBrowser() == "IE8") {alert("我是 IE8");
}

单独区分谷歌和safari的

//谷歌
if(navigator.userAgent.toLowerCase().indexOf("chrome") > 0) {alert("!")}//Safariif(navigator.userAgent.toLowerCase().indexOf("safari") > 0 && navigator.userAgent.toLowerCase().indexOf("chrome") <0){alert("2")}

 

 


推荐阅读
  • CSS3圆角技术能非常好的美化你的页面效果,而且避免了使用图片辅助,一则省去了制作图片的时间,二则省去了浏览器加载图片造成的延迟和带宽。如 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • socket.io是个基于node.js的快平台实时通讯框架。只用不到10行代码,就可以搭建一个简单的多人实时聊天室。先来看看运行后的效果:socket.io多人聊天室只要简单几 ... [详细]
  • 来自Google的前端工程师-PhilipWalton分享了本身关于怎样成为优异的工程师的一些看法。个人感觉很有代价,所以翻译成中文,轻易人人浏览。程度有限,如翻译不妥的地方请在批 ... [详细]
  • 根据时间更改网站背景的脚本。热!
    我在网上找到了它,并以自己的方式对其进行了自定义;作者的功劳就在那里。实际上,这是一个用于更改背景颜色的脚本,并且在我看来& ... [详细]
  • 媒介这里大部份是本身碰到过的状况,另有一部份自创了偕行的文章,假如人人有碰到别的坑,迎接提出来一同研讨。学问要点1.Meta标签1.制止用户缩放页面,页面强迫让文档的宽度与装备的宽 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 使用正则表达式爬取36Kr网站首页新闻的操作步骤和代码示例
    本文介绍了使用正则表达式来爬取36Kr网站首页所有新闻的操作步骤和代码示例。通过访问网站、查找关键词、编写代码等步骤,可以获取到网站首页的新闻数据。代码示例使用Python编写,并使用正则表达式来提取所需的数据。详细的操作步骤和代码示例可以参考本文内容。 ... [详细]
  • 《每个设计师都应该掌握的50个css代码段》11~20段
    2019独角兽企业重金招聘Python工程师标准11.胶卷边框img.polaroid{background:#000;*Changethistoabackgroundima ... [详细]
  • c++ 崩溃 正则表达式regex_藏在正则表达式里的陷阱
    前几天线上一个项目监控信息突然报告异常,上到机器上后查看相关资源的使用情况,发现CPU利用率将近100%。通过Java自带的线程Dump工具࿰ ... [详细]
  • 对mysql的总结与反思_一次DB故障引起的反思和MySQL Operator选型
    前言在一次数据库故障后,我们发现业务库会根据业务的等级会划分多个MySQL实例,许多业务库会同时属于一个MySQL实例,当一个库引发问题后 ... [详细]
  • html5audio标签能够支持wav,mp3,ogg,acc,webm等格式,但有个很重要的音乐文件格式midi(扩展名mid)却在各大浏览器中都没有内置的支持。不 ... [详细]
  • WebShell代码分析溯源(二)
    WebShell代码分析溯源(二)一、一句话变形马样本 ... [详细]
  • ECMA262规定typeof操作符的返回值和instanceof的使用方法
    本文介绍了ECMA262规定的typeof操作符对不同类型的变量的返回值,以及instanceof操作符的使用方法。同时还提到了在不同浏览器中对正则表达式应用typeof操作符的返回值的差异。 ... [详细]
author-avatar
盖世猎人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有