jQuery获得IE版本不准确webbrowser的解决方法


Posted in Javascript onFebruary 23, 2014

用$.browser.version经常出现一些不准确的状况,最近碰到,做了一些总结,不知道是否全面。

用javasript的navigator.userAgent.indexOf("MSIE 8.0")取法结果是一样的。

1、用webbrowser加载htm、html页面,此时加载后获取IE的版本就是不准确的,比如我的机器是IE9,但是通过webbrowser加载之后,$.browser.version方法取得的版本便是变成了7.0,用“<meta http-equiv="x-ua-compatible" content="IE=5;IE=7;IE=8;IE=9;"/>”强制解析后取得的版本依然是7.0,如果想要webbrowser取得正确的结果还是要修改注册表。

此种问题的解决方案是:在后台通过注册表获取:

<span style="font-size:18px;">private int GetIEVersion() 
{ 
using (Microsoft.Win32.RegistryKey versionKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\Internet Explorer")) 
{ 
string version = versionKey.GetValue("Version").ToString(); 
int iVersion = int.Parse(version.Substring(0, 1)); 
return iVersion; 
} 
}</span>

2、用“<meta http-equiv="x-ua-compatible" content="IE=5;IE=7;IE=8;"/>”强制解析,我的机器是IE9,添加此标签之后,再$.browser.version获得的版本是8.0。

3、嵌套Iframe的状况,如果外层是IE8解析,内层是IE9解析,这样内层获取的版本是IE9,但是实际上页面是按照IE8来解析,这样就会造成判断和实际的执行不符合。

此种情况应用应该比较少,如果遇到需通过内外层解析同时判断方可解决。

Javascript 相关文章推荐
Eclipse下jQuery文件报错出现错误提示红叉
Jan 13 Javascript
js this函数调用无需再次抓获id,name或标签名
Mar 03 Javascript
JS实现的简洁纵向滑动菜单(滑动门)效果
Oct 19 Javascript
JS实现IE状态栏文字缩放效果代码
Oct 24 Javascript
js实现input密码框提示信息的方法(附html5实现方法)
Jan 14 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
Jun 17 Javascript
使用jquery.qrcode.js生成二维码插件
Oct 17 Javascript
node.js中的事件处理机制详解
Nov 26 Javascript
js轮播图无缝滚动效果
Jun 17 Javascript
vue接入腾讯防水墙代码
May 07 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
Nov 04 Javascript
vuex存储token示例
Nov 11 Javascript
js获得页面的高度和宽度的方法
Feb 23 #Javascript
使用js判断当前时区TimeZone是否是夏令时
Feb 23 #Javascript
js获得当前时区夏令时发生和终止的时间代码
Feb 23 #Javascript
js 金额格式化来回转换示例
Feb 23 #Javascript
js实现连个数字相加而不是拼接的方法
Feb 23 #Javascript
jquery $(&quot;#variable&quot;) 循环改变variable的值示例
Feb 23 #Javascript
用JQuery实现全选与取消的两种简单方法
Feb 22 #Javascript
You might like
PHP中在数据库中保存Checkbox数据(2)
2006/10/09 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
PHP同时连接多个mysql数据库示例代码
2014/03/17 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
php简单操作mysql数据库的类
2015/04/16 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
PHP数学运算与数据处理实例分析
2016/04/01 PHP
PHP使用PDO操作数据库的乱码问题解决方法
2016/04/08 PHP
入门基础学习 ExtJS笔记(一)
2010/11/11 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
14款经典网页图片和文字特效的jQuery插件-前端开发必备
2015/08/25 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
2015/11/26 Javascript
JS弹出窗口的运用与技巧大全
2016/11/01 Javascript
js实现简易聊天对话框
2017/08/17 Javascript
记录vue项目中遇到的一点小问题
2019/05/14 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
Vue 中使用 typescript的方法详解
2020/02/17 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
彻底搞懂并解决vue-cli4中图片显示的问题实现
2020/08/31 Javascript
Python 自动安装 Rising 杀毒软件
2009/04/24 Python
Python中尝试多线程编程的一个简明例子
2015/04/07 Python
python对象与json相互转换的方法
2019/05/07 Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
2019/06/11 Python
python  logging日志打印过程解析
2019/10/22 Python
Python定时从Mysql提取数据存入Redis的实现
2020/05/03 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
习近平在党的群众路线教育实践活动总结大会上的讲话
2014/10/21 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
邀请函格式范文
2015/02/02 职场文书
销售员自我评价
2015/03/11 职场文书
小学二年级语文教学反思
2016/03/03 职场文书
七年级作文之秋游
2019/10/21 职场文书
JavaWeb Servlet实现网页登录功能
2021/07/04 Java/Android
Java Lambda表达式常用的函数式接口
2022/04/07 Java/Android
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers