用$.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取得正确的结果还是要修改注册表。
此种问题的解决方案是:在后台通过注册表获取:
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;
}
}
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来解析,这样就会造成判断和实际的执行不符合。
此种情况应用应该比较少,如果遇到需通过内外层解析同时判断方可解决。
分享到:
相关推荐
用$.browser.version经常出现一些不准确的状况,最近碰到,做了一些总结,不知道是否全面
C# WebBrowser 适应你想要的IE版本核心 方便你在内嵌式C/S 更好的体验B/S
测试WinForm原生WebBrowser控件在当前环境下对应的IE版本.
C# WebBrowser 任意切换IE版本,实惠WebBrowser的IE版本解决兼容性问题
WebBrower默认使用系统的Ie6版本,通过此方法可以设置WebBrower的默认版本,方法已封装完毕,直接引用到项目中即可使用
使WebBrowser获得焦点 提取网页中所有链接 Web字体大小 Web命令操作 WebBrowser Navigate 中的 参数 EmptyParam Web控件不缓存网页,也不从缓存中读取 禁止WebBrowser复制 CTRL+C 在WebBrowser窗口上模拟KeyBd_Event...
对一些使用了WebBrowser的控件的软件,由于默认IE版本设置不兼容网站的内容的,可以使用此工具来修改软件使用的IE版本,能够浏览正确的网页
博客演示代码,演示了IE WebBrowser控件的基本使用,包括静态创建、动态创建和事件响应。
易语言4个不同版本的WebBrowser支持库 静态版易语言4个不同版本的WebBrowser支持库 静态版易语言4个不同版本的WebBrowser支持库 静态版易语言4个不同版本的WebBrowser支持库 静态版易语言4个不同版本的WebBrowser...
IEWebBrowser组件用法详细使用方法描述文档。。
delphi的TWebBrowser控件,实际上是IE,版本比较低,经济打不开网页,可以通过修改注册表的方法进行修改成IE11
vfp下使用WebBrowser加截网页,在vfp中响应网页按钮的点击或执行脚本等,win10+ie11以及虚拟机下的win7+ie10通过 支持ie 和 edge
iewebbrowser组件的execwb方法IEWebBrowser组件的execWB方法整理。 1. <object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object> 2. 调用方法。 WebBrowser....
4个不同版本的WebBrowser支持库4个不同版本的WebBrowser支持库4个不同版本的WebBrowser支持库4个不同版本的WebBrowser支持库4个不同版本的WebBrowser支持库4个不同版本的WebBrowser支持库4个不同版本的WebBrowser...
验证码 填表 IE webbrowser 验证码 填表 IE webbrowser
适用于VS2010及以上版本,实现MFC/C++和百度地图控件Webbrowser相互调用问题,上传资源中解决odbccp32.lib报错问题,及脚本报错问题。具体开发可见百度SDK:https://lbsyun.baidu.com/index.php?title=jspopular
详细说明了WebBrowser的使用和IE编程,作为说明文档比较合适。
利用IE内置打印控件IEWebBrowser进行打印.