chrome frame节点 取_Chrome Frame插件解决IE浏览器兼容问题

chrome frame节点 取_Chrome Frame插件解决IE浏览器兼容问题时不时碰到客户的浏览器为IE7,IE8,甚至IE6的,他们不能升级浏览器,因为升级后,机器中其它的重要系统无法访问。而新系统的前端又需要浏览器的支持,比如H5,SVG等等,换框架结构,成本无疑是巨大的,而且风险不可控。针对此种情况,安装GoogleFrame是相对非常完美的解决方案,不要求升级浏览器,只安装一个插件,且对原系统无任何干扰,新系统也可根据情况对是否使用GoogleFrame插件进…

大家好,又见面了,我是你们的朋友全栈君。

时不时碰到客户的浏览器为IE7,IE8,甚至IE6的,他们不能升级浏览器,因为升级后,机器中其它的重要系统无法访问。而新系统的前端又需要浏览器的支持,比如H5,SVG等等,换框架结构,成本无疑是巨大的,而且风险不可控。针对此种情况,安装Google Frame是相对非常完美的解决方案,不要求升级浏览器,只安装一个插件,且对原系统无任何干扰,新系统也可根据情况对是否使用Google Frame插件进行切换。

X-UA-Compatible是自从IE8新加的一个设置,对于IE8以下的浏览器是不识别的。 通过在meta中设置X-UA-Compatible的值,可以指定网页的兼容性模式设置。

在网页中指定的模式优先权高于服务器中(通过HTTP Header)所指定的模式。 兼容性模式设置优先级:

meta tag > http header

meta tag > http header

常用的例子:

则是不使用Chrome引擎

个人觉得本文很有意义,对于ie一直存在的兼容问题给予一个解决办法,可以考虑在工作中使用。

以下是正文,为方便oser阅读,原文抄录如下,有关具体情况请参考原作者。

Google Chrome Frame,谷歌浏览器内嵌框架(简称GCF),是一个使你机器上的Internet Explorer系列浏览器鸟枪换炮,用上webkit内核的Chrome引擎,但IE浏览器外观上还是IE的外观的免费插件。

不相信吗?使用用IE浏览器打开GCF安装页,按照提示安装后,重启IE,再打开gcf:about:version,现在你会看到chrome浏览器的内核信息,说明Chrome内核已经植根于你的IE浏览器上了。

chrome frame节点 取_Chrome Frame插件解决IE浏览器兼容问题

但并非你的IE访问任意网页就会自动的使用Chrome内核来解析,需要两种方式:一是在网址前面加上”gcf:“,比如gcf:http://gmail.com来访问;二是在网页的meta信息中加入一句:

这里chrome=1代表所有版本的IE浏览器都使用Chrome内核解析网页,chrome属性还有其他的值,比如chrome=IE7,代表IE7或以下版本的浏览器才使用chrome内核,chrome=IE6和chrome=IE8等依此类推。

作为一个网页开发者,你会不会想到有了这个插件,以后就可以大胆使用各种CSS3样式,只要Chrome下显示正确,IE下也能显示正确了!没错!但前提是用户会安装这个插件吗?如何提供一个友好的引导安装界面呢,Google帮我们解决了这个问题。 

在body标签中加入这段js代码,可以使得IE打开该网页时出现友好的GCF安装引导iframe框。这段代码不需要存在于

之中,js中已经做了浏览器的判断。

chrome frame节点 取_Chrome Frame插件解决IE浏览器兼容问题

CFInstall.min.js是官方提供的文件,CFInstall.check()方法有许多可选项,其中包括:mode: “inline” 默认值,GCF安装引导的iframe结构将存在于node选项指定id的元素中最前面位置,属于文档流的一部分

mode: “overlay” 该iframe以弹出层显示,弹出层将会在页面可视范围内居中

mode: “popup” 该iframe以新开窗口/选项卡显示,类似于target:_blank的效果

node: “” 指定iframe结构的dom结点位置,在mode:”inline”下有效

url: “” 点击安装按钮跳转到的链接地址,默认为GCF安装文件地址

destination: “” GCF安装完成后页面跳转到的链接地址

className: “” 在mode:”inline”下对iframe指定新的class名,美化iframe界面时很有用,默认的class为chromeFrameInstallDefaultStyle

OK,了解了这么多,相信你已经跃跃欲试了,我在我的博客上开启了chrome=IE8并加上了GCF的友好安装指引,欢迎访问比较IE下和Chrome下的渲染差异。

更多GCF的参考资料:官方开发者文档:http://www.chromium.org/developers/how-tos/chrome-frame-getting-started

chrome frame设置

安装完chrome frame后,并非IE访问任意网页就会自动的使用Chrome内核来解析,需要两种方式:一是在网址前面加上”gcf:“,比如gcf:http://gmail.com来访问;二是在网页的meta信息中加入一句: 这里chrome=1代表所有版本的IE浏览器都使用Chrome内核解析网页,chrome属性还有其他的值,比如chrome=IE7,代表IE7或以下版本的浏览器才使用chrome内核,

2.1.开始–运行–输入regedit打开注册表,依次打开HKEY_CURRENT_USER\Software\Google\下新建一个(key)项,名为ChromeFrame.

2.2.使用“gcf:“前缀时调用chrome frame浏览设置;需在注册表中“HKEY_CURRENT_USER\Software\Google\ChromeFrame”中新建一个DWORD值取名为”AllowUnsafeURLs“,并将其值设为”1“。这时,只要在要浏览的网页的地址前加上”gcf:“,IE就会自动使用ChromeFrame渲染该网页,例如”gcf:http://www.google.com.hk“IE便会自动使用ChromeFrame渲染谷歌首页”http://www.google.com.hk“

2.3.在该项下新建一个DWORD值,名叫IsDefaultRenderer.这个IsDefaultRenderer的值如果设置为0是使用IE内核渲染,设置为1是使用Google Chrome Frame渲染所打开的网页.我们这里设置为1.

2.4 chrome访问网址列表;注册表中“HKEY_CURRENT_USER\Software\Google\ChromeFrame”新建一个子项(KEY)取名为”RenderInGcfUrls;其中添加的多个字符串值默认使用chrome访问,可用通配符;例如,上图的”*google“可以理解为所有地址中包含”google“的站点)。这样,就形成了一个地址列表,凡是与该列表匹配的站点IE将自动使用chrome frame浏览,其他站点则依旧使用IE自己的内核浏览

2.5.E仅打开指定站点;设置方法与上面相近,同样是在“HKEY_CURRENT_USER\Software\Google\ChromeFrame”中新建一个”DWORD值”取名为”IsDefaultRenderer“,不过这时要将其值设为”1“,同样,回到“HKEY_CURRENT_USER\Software\Google\ChromeFrame”并在其下面新建一个子项,这时应将它命名为”RenderInHostUrls“,同样,进入刚才建好的子项”RenderInHostUrls“,在其下建立一个或多个”字符串值“并将它们分别命名为一些网址(同样需要注意:是条目的名称,而非它的值,双击设置它的值没用的,而应右键点它,然后重命名)同样,可以为完整的网址,也可以使用通配符”*“那么,同样也形成了一个地址列表,不过,与这个列表相匹配的站点,IE将使用自己的内核浏览,其他站点则自动使用chrome frame浏览。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160277.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Git克隆远端代码到本地「建议收藏」

    1、在桌面上点击鼠标右键,找到clone选项,出现其中URL是你要访问的地址,directory为文件保存的路径。点击OK2、桌面上会生成一个文件夹3、在此文件夹中,点击鼠标右键,找到GitBashHere,进入到如下页面输入命令第一:gitconfig–globaluser.name“zjut_wzc”第二:gitconfig–globaluser.em…

  • 如何查看计算机中的端口占用情况,电脑如何查看端口是否被占用?CMD查看端口占用开放情况…「建议收藏」

    如何查看计算机中的端口占用情况,电脑如何查看端口是否被占用?CMD查看端口占用开放情况…「建议收藏」端口是很多软件和服务用于通讯的,但是实际上会有很多软件或服务端口使用同一个端口,这就导致一个端口被占用后,另一个也需要该端口的应用无法正常工作,那么如何查看端口被占用呢?这里我们可以使用CMD命令来查看。查看端口是否被占用方法:一、打开CMD命令提示符,然后使用“netstat–an|findstr21”确认端口被占用(上面的21可以改成你要查看的端口);listening”“closing”…

  • Android 相机方向传感,如何在Android设备中获取相机传感器尺寸?[通俗易懂]

    Android 相机方向传感,如何在Android设备中获取相机传感器尺寸?[通俗易懂]从API级别21开始是可能的.从文档(https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.html#SENSOR_INFO_PHYSICAL_SIZE):publicstaticfinalKeySENSOR_INFO_PHYSICAL_SIZEThephysical…

  • 【Linux】 Apache配置文件详解「建议收藏」

    【Linux】 Apache配置文件详解「建议收藏」安装apache并启动[root@gaosh-64~]#yuminstallhttpd[root@gaosh-64~]#systemctlrestarthttpd[root@gaosh-64~]#systemctlenablehttpdCreatedsymlinkfrom/etc/systemd/system/multi-user.target.wants/httpd.serviceto/usr/lib/systemd/system/httpd.service.

  • SpringBoot常用注解集合「建议收藏」

    SpringBoot常用注解集合「建议收藏」前言这里我们不会将springboot全部的注解都一个一个分析一遍,因为现在普遍都是前后端分离开发,所以之前用在很多的模板视图解析上的注解现在已经不怎么用到了这里就没再提。有需要的同学可以去看我的其他关于框架的专栏。Part.1:SpringMVC工作原理因为springboot其实就是spring和SpringMVC的合体版本,所以分析它的注解其实就是分析spring和SpringMVC的注解,所以我们可以先看一下SpringMVC的工作原理(具体的解析可以看我的关于SpringMVC框架的专栏),

  • redis 缓存技术与memcache的最大差别

    redis 缓存技术与memcache的最大差别

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号