在调用 jquery 插件时,出现$.browser 报错,原来是jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version 等属性,

取而代之的是 $.support 。

解决方案:添加以下js

  1. (function(jQuery){
  2.  
  3. if(jQuery.browser) return;
  4.  
  5. jQuery.browser = {};
  6. jQuery.browser.mozilla = false;
  7. jQuery.browser.webkit = false;
  8. jQuery.browser.opera = false;
  9. jQuery.browser.msie = false;
  10.  
  11. var nAgt = navigator.userAgent;
  12. jQuery.browser.name = navigator.appName;
  13. jQuery.browser.fullVersion = ''+parseFloat(navigator.appVersion);
  14. jQuery.browser.majorVersion = parseInt(navigator.appVersion,);
  15. var nameOffset,verOffset,ix;
  16.  
  17. // In Opera, the true version is after "Opera" or after "Version"
  18. if ((verOffset=nAgt.indexOf("Opera"))!=-) {
  19. jQuery.browser.opera = true;
  20. jQuery.browser.name = "Opera";
  21. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  22. if ((verOffset=nAgt.indexOf("Version"))!=-)
  23. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  24. }
  25. // In MSIE, the true version is after "MSIE" in userAgent
  26. else if ((verOffset=nAgt.indexOf("MSIE"))!=-) {
  27. jQuery.browser.msie = true;
  28. jQuery.browser.name = "Microsoft Internet Explorer";
  29. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  30. }
  31. // In Chrome, the true version is after "Chrome"
  32. else if ((verOffset=nAgt.indexOf("Chrome"))!=-) {
  33. jQuery.browser.webkit = true;
  34. jQuery.browser.name = "Chrome";
  35. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  36. }
  37. // In Safari, the true version is after "Safari" or after "Version"
  38. else if ((verOffset=nAgt.indexOf("Safari"))!=-) {
  39. jQuery.browser.webkit = true;
  40. jQuery.browser.name = "Safari";
  41. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  42. if ((verOffset=nAgt.indexOf("Version"))!=-)
  43. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  44. }
  45. // In Firefox, the true version is after "Firefox"
  46. else if ((verOffset=nAgt.indexOf("Firefox"))!=-) {
  47. jQuery.browser.mozilla = true;
  48. jQuery.browser.name = "Firefox";
  49. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  50. }
  51. // In most other browsers, "name/version" is at the end of userAgent
  52. else if ( (nameOffset=nAgt.lastIndexOf(' ')+) <
  53. (verOffset=nAgt.lastIndexOf('/')) )
  54. {
  55. jQuery.browser.name = nAgt.substring(nameOffset,verOffset);
  56. jQuery.browser.fullVersion = nAgt.substring(verOffset+);
  57. if (jQuery.browser.name.toLowerCase()==jQuery.browser.name.toUpperCase()) {
  58. jQuery.browser.name = navigator.appName;
  59. }
  60. }
  61. // trim the fullVersion string at semicolon/space if present
  62. if ((ix=jQuery.browser.fullVersion.indexOf(";"))!=-)
  63. jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(,ix);
  64. if ((ix=jQuery.browser.fullVersion.indexOf(" "))!=-)
  65. jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(,ix);
  66.  
  67. jQuery.browser.majorVersion = parseInt(''+jQuery.browser.fullVersion,);
  68. if (isNaN(jQuery.browser.majorVersion)) {
  69. jQuery.browser.fullVersion = ''+parseFloat(navigator.appVersion);
  70. jQuery.browser.majorVersion = parseInt(navigator.appVersion,);
  71. }
  72. jQuery.browser.version = jQuery.browser.majorVersion;
  73. })(jQuery);

关于jquery $.browser 报错问题的更多相关文章

  1. [vuex] vuex requires a Promise polyfill in this browser报错问题的解决办法

    在IE下由于不支持promise而导致的问题,需要插件babel-prolyfill cnpm i bablel-prolyfill -D 接着在webpack.config.js当中进行配置 ent ...

  2. ie11 selenium 报错org.openqa.selenium.NoSuchWindowException: Unable to get browser 处理方法

    selenium + ie11运行报错 org.openqa.selenium.NoSuchWindowException: Unable to get browser (WARNING: The s ...

  3. The command ("dfs.browser.action.delete") is undefined 解决Hadoop Eclipse插件报错

    Hadoop Eclipse插件 报错. 使用 hadoop-eclipse-kepler-plugin-2.2.0.jar 如下所示 Error Log 强迫症看了 受不了 The command ...

  4. selenium启动IE浏览器报错:Unexpected error launching Internet Explorer. Browser zoom level was set to

    解决此问题的方法就是查看自己的浏览器是否没有放大至100%,如下 如果不是100%就会报错

  5. react服务端渲染同构报错Browser history needs a DOM

    https://github.com/nozzle/react-static/issues/343 去掉了browserRouter就不报错了,但是又会有其他报错..

  6. IE报错:[vuex] vuex requires a Promise polyfill in this browser.

    使用的是vue2.0版本 IE报错提醒: 导致原因:使用了 ES6 中用来传递异步消息的的Promise,而IE的浏览器不支持 解决办法: 1.安装babel-polyfill模块,babel-plo ...

  7. robotframework - 运行报错提示 No keyword with name 'Open Browser' found.

    用下面的例子为例: 1.输入以上robot脚本提示: 2.经查阅资料,大部分都使用的是selenium2 版本,无法解该的问题,目前小编使用的是selenium3,不知道selenium是哪个版本的话 ...

  8. Winform下CefSharp的引用、配置、实例与报错排除(源码)

    Winform下CefSharp的引用.配置.实例与报错排除 本文详细介绍了CefSharp在vs2013..net4.0环境下,创建Winfrom项目.引用CefSharp的方法,演示了winfro ...

  9. Sql Server 2008卸载后再次安装一直报错

    sql server 2008卸载之后再次安装一直报错问题. 第一:由于上一次的卸载不干净,可参照百度完全卸载sql server2008 的方式 1. 用WindowsInstaller删除所有与S ...

随机推荐

  1. 【MongoDB】2、安装MongoDB 2.6.1 on Unbuntu 14.04(学习流水账)

    http://blog.csdn.net/stationxp/article/details/26077439 计划: 装一个虚机,ubuntu吧,14.04 Trusty Tahr. 安装Mongo ...

  2. 源码分析-react1-根节点渲染

  3. [Vue @Component] Pass Props Between Components with Vue Slot Scope & renderless component

    Components with slots can expose their data by passing it into the slot and exposing the data using  ...

  4. OC中APPDelegate[[UIApplication shareApplication]delegate]]Swift实现

    直接上代码: var myDelegate:AppDelegate? myDelegate = UIApplication.sharedApplication().delegate as? AppDe ...

  5. zoj 1880 - Tug of War

    题目:有n个人分成两组,两组人数差不能超过1,找到两组的人重量之差的最小值. 分析:dp,二维01背包. 由于必须放在两个组中的一组,直接背包全部可到状态, 取出相差不超过 1的最接近 sum/2的值 ...

  6. 数据切分——Atlas介绍

    Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目.它在MySQL官方推出的MySQL-Proxy 0.8.2版本号的基础上,改动了大量bu ...

  7. 关于Android中的四大组件(Service的开启与关闭)

    前言 服务(Service)是Android系统中的四大组件之中的一个.服务主要用于两个目的:后台执行和跨进程訪问. 通过启动 一个服务.能够在不显示界面的前提下在后台执行指定的任务,这样能够不影响用 ...

  8. SOJ.Output the Yanghui triangel

    Output the Yanghui triangel     总提交数量: 225 通过数量: 59                 时间限制:1秒    内存限制:256兆 题目描写叙述 Writ ...

  9. Android资源之图像资源(图像级别资源)

    图像状态资源仅仅能定义有限的几种状态. 假设须要很多其它的状态,就要使用图像级别资源. 在该资源文件里能够定义随意多个图像级别. 每一个图像级别是一个整数区间,能够通过ImageView.setIma ...

  10. excel 字符串拼接 添加 超链接

    =HYPERLINK("http://"&C2,"http://"&C2)