告别IE给我们的web开发带来的困扰(使用chrome frame v8引擎)
茶爸爸个人微信:benyzhous,公众号:cha-baba欢迎骚扰
由于客户所有机器必须使用IE6浏览器,导致我们在开发项目过程中遇到非常多的样式与性能问题,在偶然的一次使用360软件管家搜索chrome浏览器,发现一个谷歌浏览器内嵌框架,当时好奇,看了看相关描述(Goole Chrome浏览器内嵌框架是一个开放源代码插件,可将谷歌浏览器的开放网络技术和快速JavaScript引擎与Internet Explorer无缝结合。),当时就觉得这个东西是我很久以前就在找的东西,现在想想当时怎么就没根据这些关键字去找谷歌呢,现在肠子都悔青了,闲话不多说了,扯点正事啦。
如果想在IE6下使用chrome frame,首先需要安装它,如果下载不了,就使用代理软件(动网通)来下载(http://www.google.com/chromeframe/thankyou.html?msi=true),其次也就是关键的地方,具体使用看下面的说明:
安装完chrome frame后默认情况下并没有完全开启,需要修改一下注册表才会使IE强制使用Google Chrome Frame来渲染网页.否则的话就只有网站代码里写到<meta http-equiv="X-UA-Compatible" content="chrome=1">时才会自动开启.
1.开始--运行--输入regedit打开注册表,依次打开HKEY_CURRENT_USER\Software\Google\下新建一个(key)项,名为ChromeFrame.
2.在该项下新建一个DWORD值,名叫IsDefaultRenderer.这个IsDefaultRenderer的值如果设置为0是使用IE内核渲染,设置为1是使用Google Chrome Frame渲染所打开的网页.我们这里设置为1.
以上两步差不多就可以满足一些人的需要了,但不推荐,推荐下面网银的那个方法.,往下是一些特殊情况.
如果上面设置为0的话,不是使用IE内核渲染吗?这时如果又想某些页面,个别页面专门用Google Chrome Frame渲染的话,请如下操作
1.依次打开注册表HKEY_CURRENT_USER\Software\Google\ChromeFrame\下新建一个项(key),名为RenderInGcfUrls.
2.在RenderInGcfUrls下新建字符串值,想登录google下的任何服务的网站就设置字符串的值为→*google.com*
雅虎下的邮箱设置服务格式是→*yahoo.com/mail*
如果直接设置是个*的话就是,所有网页都用Google Chrome Frame渲染.
跟上面的情况相反,如果设置为1的话,不就是使用Google Chrome Frame渲染吗?这个时候如果有些页面想使用IE内核来渲染,操作如下:(这个方法还是推荐的,因为有网银嘛,对吧?网银一定要用IE内核了,其他页面还都用chrome内核就用这个方法)
继续刚才红色的那段,所以这里就从3开始了(因为这是推荐的方法)
3.依次打开注册表HKEY_CURRENT_USER\Software\Google\ChromeFrame\下新建一个项(key),名为RenderInHostUrls.
4.在RenderInGcfUrls下新建字符串值,多个网址就多建几个字符串值.值的内容就是下面的网址.
下面是大部分网银的网址设置,这里的设置跟上面的设置同理,不要加###后面的字了就.
https://*.icbc.com.cn/* ### 中国工商银行
https://*.cmbchina.com/* ### 中国招商银行
https://*.abchina.com/*
https://*.95599.cn/* ### 中国农业银行(上面也是)
https://*.ecitic.com/* ### 中信银行
https://*.cebbank.com/* ### 光大银行
https://*.95559.com.cn/* ### 交通银行
https://*.sdb.com.cn/* ### 深圳发展银行
https://*.ccb.com.cn/* ### 建设银行
https://*.psbc.com/* ### 邮政储蓄
这样,如果是网银的话,IE会还是使用IE内核浏览,如果不是网银的话,就会使用 chrome frame来浏览.差不多满足了大部分人的需要了,在如果你不能放弃IE的情况下.
如果直接设置是个*的话就是,所有网页都用IE内核渲染.
有人说了安装了chrome frame之后为什么浏览网页没有自动使用chrome frame浏览呢?
在访问谷歌重力和google wave这两个网站的时候,IE会自动转换成google chrome frame来浏览(在安装有chrome frame的IE下打开网页后按右键就知道了),但是在访问其他网站的时候没有自动转换成google chrome frame来浏览是为什么呢?因为网站的代码里有<meta http-equiv="X-UA-Compatible" content="chrome=1">这行代码,这行代码就会使IE自动使用chrome
frame浏览,没有这行代码就不会自动使用chrome frame浏览.chrome frame并不是我们想的那样,安装上之后,访问所有的网页都会使用chrome frame浏览.要想这样的话,需要按照上面的方法修改注册表设置强制IE使用Google Chrome Frame来渲染才行.就是说默认情况下没开着,这是为了你的安全考虑.需要改注册表才能打开