IE11下不识别jatoolsprinter的print方法
管理员您好,我在IE11下使用jatoolsprinter插件的免费版,但是出现了print方法不能识别的情况,麻烦帮我看下是什么原因。具体如下。
(0)操作系统是win7,64位,浏览器是IE11非兼容模式。
(1)setup.exe已经正确安装,并且官网上的样例都好用。
我本地工程通过下面的代码引入jatoolsprinter:
[code]var div = document.createElement("div");
div.innerHTML = "<OBJECT ID=\"jatoolsPrinter\" style=\"display: none\" CLASSID=\"CLSID:B43D3361-D975-4BE2-87FE-057188254255\" codebase=\"unieap/pages/form/jatoolsP.cab#version=1,2,0,2\"></OBJECT>";
document.body.appendChild(div);[/code]
(2)然后我作了判断
[code]if(typeof(jatoolsPrinter.print)=='undefined')[/code]
发现jatoolsPrinter对象是存在的,但是jatoolsPrinter.print的值总是undefined,所以打印功能不好用。
麻烦帮我看下这是什么原因。
补充:
我换了一种引入方式
[code]div.innerHTML = "<iframe ID=\"jatoolsPrinter\" style=\"display: none\" CLASSID=\"CLSID:B43D3361-D975-4BE2-87FE-057188254255\" codebase=\"unieap/pages/form/jatoolsP.cab#version=1,2,0,2\"></iframe>"; [/code]
出现了另外的情景,就是jatoolsPrinter.print可以识别,但是jatoolsPrinter.printPriview却始终识别不出来,也就是预览功能总是不好用。
项目上还比较着急,麻烦帮我看下,谢谢啦! 可能是加载不到引起,这样处理试试:
1. 在 </body> 前声明 <object>来加载控件;
2. 把你的服务器加入ie的信任域名。
注意:
1.试图用iframe加载控件,根本是错误的;
2.不要用 innerHTML 加载控件,因为此方法加载控件,可能由于加载没完成,导致 printPreview识别不到;
3.不要用老版本的打印控件,jatoolsP.cab太早了。 按你说的在页面上直接写<OBJECT>,然后调用新版的jatoolsPrinter.cab,好用了。
非常感谢!
另外再问一个问题:在设置打印的时候pagePrefix和page_div_prefix有什么差别?项目里使用的是page_div_prefix,但在IE11下好像识别不了,是因为新版没有这个设置吗?
或者哪里能找到jatoolsPrinter的升级指南,我们工程里使用了老版打印插件(09年左右)不支持IE11,我们需要如何升级jatoolsprinter来支持IE11?
页:
[1]