对于 IE 10及以下版本,从 IE 6到 IE 10,其JavaScript执行引擎效率不高,通过这些浏览器访问 Smartbi 时页面渲染速度比较慢,甚至可能某些页面功能显示不正常。因此对于 IE 10以下浏览器在访问Smartbi时,在登录界面上最下方会提示用户 "您的IE浏览器版本过低,部分功能可能无法正常使用,请升级到IE11或安装ChromeFrame插件。",让用户下载安装Google Chrome Frame插件,之后浏览器会通过Chrome 内核来显示页面,加载速度会有非常大的提升。
如果第三方系统中集成了 Smartbi 的报表,则需要第三方系统也具有该功能,能提示用户下载安装Google Chrome Frame插件,具体该怎么做呢,请参考如下步骤。
1、首先需要将 CFInstall.js 和 gcfutil.js 两个文件添加到自己的项目中。
2、然后修改登录页面index.jsp的代码,比如在 onload 事件中调用gcfutil.showSetupGcfPrompt()方法,提示用户下载安装Google Chrome Frame插件。用户访问index.jsp页面时,效果如下图,页面底部会显示"您的IE浏览器版本过低,部分功能可能无法正常使用,请升级到IE11或安装ChromeFrame插件。"
<%@ page contentType="text/html; charset=UTF-8"%> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="js/gcfutil.js"></script> <script type="text/javascript" src="js/CFInstall.js"></script> <script type="text/javascript"> function doOnStartup() { // 检测并提示用户安装Google Chrome Frame插件 gcfutil.showSetupGcfPrompt(); }; </script> </head> <body onload="doOnStartup();" style="background-image: url(backgroup.png); background-repeat: no-repeat; background-color: black"> <div style="display: none;"> ... ... </div> </body> </html> |
3、在上述页面底部提示中,用户点击ChromeFrame 超链接时,将下载Google Chrome Frame插件,用户下载后解压并执行里面的"GoogleChromeStandaloneEnterprise.msi"即可。因此需要把ChromeFrame.zip文件也添加到自己的项目中。
4、为了让Google Chrome Frame插件对当前系统生效,还需要修改外层集成框架的代码,在页面最开始的位置添加如下一行代码:
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
如下图红框所示:
5、用户安装插件后,如何验证插件是否生效了呢。在IE浏览器中打开上述页面,点击鼠标右键,弹出菜单如下则说明插件启用成功:
6、更多信息说明:IE浏览器隐身模式中该插件不会生效。其它信息可网上搜索关键字"Google Chrome Frame"。
示例页面:sample.jsp
原始文档:http://pan.baidu.com/s/1sloXd1N