js/jquery检测是否IE实例代码

js判断是否IE

 代码如下 复制代码

function isMSIE(){
var match = /(msie) ([w.]+)/.exec( navigator.userAgent.toLowerCase() );
if(match !== null){
return true;
}else{
return false;
}
}

从jQuery的jQuery.browser里面拿出来的,jQuery从1.9开始废弃这个方法,改用jQuery.support来检测浏览器支持的特性。

 

 代码如下 复制代码
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script>
$(function(){
     if($.browser.msie) {
        alert("这是一个IE浏览器");
     }else if($.browser.opera) {
        alert("这是一个opera浏览器");
     }else if($.browser.mozilla) {
        alert("这是一个火狐浏览器");
     }else if($.browser.safari) {
        alert("这是一safari浏览器");
     }
})
</script>

当页面载入式判断浏览器类型,可判断的类型有msie、mozilla、opera、safari

jQuery的说法是,使用 navigator.userAgent 检测不准确,容易被伪造欺骗。

jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9。 如果要全面支持 IE,并混合使用 jQuery 1.9 和 2.0, 官方的解决方案是:

 代码如下 复制代码

<!--[if lt IE 9]>
    <script src='jquery-1.9.0.js'></script>
<![endif]-->
<!--[if gte IE 9]>
    <script src='jquery-2.0.0.js'></script>
<![endif]-->

从长久来看,这样有利于在复杂情况下根据浏览器特性进行分别处理, 而不是简单的检测浏览器类型和版本。 但目前很多旧程序的移植恐怕无法直接过渡为根据浏览器支持特性, 所以在网上找了一些能够直接替换的解决办法。

判断浏览器类型:

 代码如下 复制代码

$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
$.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());
$.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());

等号后面的表达式返回的就是 true/false, 可以直接用来替换原来的 $.browser.msie 等。

检查是否为 IE6:

 代码如下 复制代码

// Old
if ($.browser.msie && 7 > $.browser.version) {}
// New
if ('undefined' == typeof(document.body.style.maxHeight)) {}

检查是否为 IE 6-8:

 代码如下 复制代码

if (!$.support.leadingWhitespace) {}

终极方法是用另外的类库替代,比如 这个 , 但作者也不推荐使用浏览器类型和版本来进行判断。

但我还是觉得,这玩意检测成本低,挺有价值的。至于开发者去伪造它,就让他们伪造去,我只是用来做比较暴力的降级处理。

时间: 2024-09-20 07:57:11

js/jquery检测是否IE实例代码的相关文章

js+jquery title 提示层实例代码

提示:您可以先修改部分代码再运行 js+jquery title 提示层实例代码 title提示层实例 用jQuery在IE6下实现css的max-width属性 用jQuery在IE6下实现css的max-width属性 用jQuery在IE6下实现css的max-width属性 用jQuery在IE6下实现css的max-width属性 提示:您可以先修改部分代码再运行

JS实现星星评分功能实例代码(两种方法)_javascript技巧

一.方法1 1.用到图片 2.结构和样式 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> ul { padding-left: 0; overflow: hidden; } ul li { float: left; list-style: no

基于jQuery实现返回顶部实例代码_jquery

效果图展示如下所示: 使用方法: 只需引用jQuery库和YesTop插件,然后一句代码就可以实现返回顶部: 引用代码: <script type="text/javascript" src="http://hovertree.com/ziyuan/jquery/jquery-1.11.3.min.js"></script> <script type="text/javascript" src="http:

js给table赋值的实例代码_javascript技巧

要求:用js实现给一个table赋值如上:(定义X=70 [HTML] <table class="table table-bordered"> <thead> <tr> <th colspan="5" class="active">经济条件较好地区学费表</th> </tr> <tr> <th></th> <th>4-8人班&

JS实现随机化快速排序的实例代码

这篇文章介绍了JS实现随机化快速排序的实例代码,有需要的朋友可以参考一下   算法的平均时间复杂度为O(nlogn).但是当输入是已经排序的数组或几乎排好序的输入,时间复杂度却为O(n^2).为解决这一问题并保证平均时间复 杂度为O(nlogn)的方法是引入预处理步骤,它惟一的目的是改变元素的顺序使之随机排序.这种预处理步骤可在O(n)时间内运行.能够起到同样作用的 另一种简单方法是在算法中引入一个随机元素,这可以通过随机地选择拆分元素的主元来实现.随机选择主元的结果放宽了关于输入元素的所有排列

js中switch case循环实例代码

 这篇文章主要介绍了js中switch case循环实例代码,有需要的朋友可以参考一下 代码如下: switch (objNameType) {   case 'PD':   valueUD = obj.id;   id = objName;   var loadVUD = UserData.load(exam, id);   if (loadVUD == null || loadVUD == undefined || loadVUD == '') {   var tmpTGId = obj.i

js表格字段排序的实例代码介绍

 本篇文章只要是对js表格字段排序的实例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 1.比较函数生成器:    代码如下: /**  * 比较函数生成器  *   * @param iCol  *            数据行数  * @param sDataType  *            该行的数据类型  * @return  */ function  generateCompareTRs(iCol, sDataType) {      return   functio

用js实现简单算法的实例代码_javascript技巧

一.冒泡排序 var arr1=[3,9,2,7,0,8,4]; for(var i=0;i<arr1.length;i++){ for(var j=i+1;j<arr1.length;j++){ var temp=0; if(arr1[i]>arr1[j]){ temp=arr1[i]; arr1[i]=arr1[j]; arr1[j]=temp; } } } alert(arr1); 二.快速排序 var a=[3,5,0,9,2,7,5]; function quickSort(a

PHP制作登录异常ip检测功能的实例代码_php实例

使用函数查询数据库遍历实现 /** * 不在常用ip地址登录返回描红信息 * @param string $ip ip地址 * @param string $name 用户名 * @return string */ function errorIp($ip,$name){ $nowip = get_client_ip(); //判断ip和当前ip是否相同,不同则查询数据库对比 if($ip == $nowip ){ //相同直接返回字符串 $str = '<font color="blue