js判断浏览器种类

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

function myBrowser(){var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串if (userAgent.indexOf("Opera") > -1) {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浏览器
}
  //判断是否是IE浏览器,包括Edge浏览器 function IEVersion() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器 
var isEdge = userAgent.indexOf("Windows NT 6.1; Trident/7.0;") > -1 && !isIE; //判断是否IE的Edge浏览器 if(isIE) { var reIE = new RegExp("MSIE (\\d+\\.\\d+);"); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp["$1"]); if(fIEVersion == 7) { return "IE7";} else if(fIEVersion == 8) { return "IE8";} else if(fIEVersion == 9) { return "IE9";} else if(fIEVersion == 10) { return "IE10";} else if(fIEVersion == 11) { return "IE11";} else{ return "0"}//IE版本过低 } 
else if(isEdge) 
{ return "Edge"; 
} else{ return "-1";//非IE } }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/570241.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

axios get post下载文件

let url URLParser.submitUrl(/download);return new Promise((resolve, reject) > { axios({ method: get,// post url: url,     data : , responseType: blob }).then((response) > { const blob new Blob([response.data])…

oracle如何创建视图

视图的优点: 1.对数据库的访问,因为视图可以有选择性的选取数据库里的一部分。 2.用户通过简单的查询可以从复杂查询中得到结果。 3.维护数据的独立性,试图可从多个表检索数据。 4.对于相同的数据可产生不同的视图。 视图分为简单视图和复杂…

docker+selenium grid解决node执行经常卡死

执行用例时出现下图: 可以在启动node节点容器时添加如下红色字体的参数 docker run -d -p 5903:5900 --shm-size512m --link selenium_hub:hub --name chrome_node-5903 -e NODE_MAX_INSTANCES5 -e NODE_MAX_SESSION5 selenium/node-chrome-debug 启动容器后到grid…

oracle授权操作

1、给数据库用户授权(对象为用户表) GRANT privilege[, ...] ON object[, ...] TO { PUBLIC | GROUP group| username} 详解: privilege: select:查询 insert:插入 update:更新 delete&am…

oracle死锁的解决方法

1、 关于死锁 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进…

高级软件工程第四次作业:两只小熊队团队作业

一、团队展示 队名:两只小熊队 队员学号 周菲(队长)学号: 201810812007 孔繁燕(队员)学号:201810812001 一句话描述拟作的团队项目:充分发挥主动积极性,通过团队提升自我…

关于QueryRunner数据查询以及常用方法

QueryRunner数据查询操作调用QueryRunner类方法query(Connection con,String sql,ResultSetHandler r, Object.params)ResultSetHandler r 结果集的处理方式,传递ResultSetHandler接口实现类Object.params SQL语句中的?占位符注意: query方法返回值,返回的是T 泛型, 具体返回值…

js的校验

1、判断是否为数字(整数、小数) //使用isNaN()函数 //isNaN()的缺点就在于 null、空格以及空串会被按照0来处理 //isNaN: Not a Number function isRealNum(val){// isNaN()函数 把空串 空格 以及NUll 按照0来处理 所以先去除if(val "" || v…

oracle存储过程的写法

create or replace procedure 要创建的存储过程名称(入参a in varchar2, 出参b out varchar2) is变量c varchar2(2000);变量d number(10);异常变量e exception;beginif 入参a is null thenraise 异常e;end if;//跳到异常处理for cc in (select语句) LOOP//执行sqlv_sql:sel…

杂项:WCF

ylbtech-杂项:WCFWindows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台。整合了原有的windows通讯的 .net Remoting,WebService,Socket的机制,并融合…

js定时器的写法

js 定时器有以下两个方法: setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式。方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。 setTimeout() :在指定的毫秒数后调用函数…

Oracle特殊恢复原理与实战(DSI系列)

1、深入浅出Oracle(DSI系列Ⅰ) 2、Oracle特殊恢复原理与实战(DSI系列Ⅱ) 3、Oracle SQL Tuning(DSI系列Ⅲ)即将开设 4、Oracle DB Performance Diagnostics(DSI系列Ⅳ)2018年内将开设 5、Oracle DSI核心揭密…

jSignature开发实例

插件描述&#xff1a;jQuery手写签名插件jSignature &#xff0c;实现H5APP、网页 手写签名涂鸦 保存图片 代码实例 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP index.jsp starti…

react todolist代码优化

Todolist.js import React, { Component,Fragment } from react; import TodoItem from ./TodoItem; import ./style.css; class Todolist extends Component {constructor(props) { //最优先执行的函数super(props);this.state{inputValue:,list:[]}this.handleinputChangethi…

json、xml

json&#xff1a;(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。简单地说&#xff0c;JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串&#xff0c;然后就可以在函数之间轻松地传递这个字符串&#xff0c;或者在异步应用程序中将字符串从 …

Math.round(),Math.ceil(),Math.floor()的区别

round() 方法可把一个数字舍入为最接近的整数。 就是基本的四舍五入 document.write(Math.round(0.49)) 结果为&#xff1a;0document.write(Math.round(0.60)) 结果为&#xff1a;1document.write(Math.round(-5.1)) 结果为&#xff1a;-5document.write(Math.round(-5.6)) 结…

modifying的博客

https://www.cnblogs.com/JackLi07/转载于:https://www.cnblogs.com/wyh-blog/p/9882283.html

java生成随机数的两种方式

一、java.lang.Math.Random; Math.Random()函数能够返回带正号的double值&#xff0c;该值大于等于0.0且小于1.0&#xff0c;即取值范围是[0.0,1.0) //取1~10的随机数 Math.floor(Math.random()*101) 产生的是double随机数列。 ——————————–分割线————————…

TP3.2.x判断手机端访问并设置默认访问模块的方法 - ThinkPHP框架

手机端访问时调用Wap手机模块&#xff0c;实现在手机端访问时展示出手机网站&#xff0c;无需跳转域名首先我们在./Application/Common/Conf/ 目录下建立两个公共配置文件&#xff1a;config.php 和config_wap.phpconfig.php 中&#xff1a; return array( DEFAULT_MODULE&g…

request获取url的参数编码问题

1、设为utf-8编码 request.getParameter("Params")).getBytes("iso-8859-1"), "utf-8" ) 2、防止参数为null的情况&#xff0c; str null ? "" : str; 3、编解码问题 https://blog.csdn.net/farxix/article/details/78055469