IEでデータ出力画面を開き、印刷ボタンをクリックすると印刷プレビューに遷移したいのですが、どうもLinuxだとうまくいきません。解決方法を教えていただけると幸いです。
PHP
1<!DOCTYPE html> 2<html moznomarginboxes mozdisallowselectionprint> 3<head> 4<meta charset="utf-8"> 5<link media="screen,print" rel="stylesheet" href="print_yoko.css"> 6<script src="../../common/js/print_preview.js"></script> 7</head> 8<body > 9 <button type="button" value=" test" onclick="printPreview()">test</button> 10 <?php print $print_page; ?> 11<script> 12 //印刷プレビュー画面を表示させるスクリプト 13 function printPreview(){ 14 var userAgent = window.navigator.userAgent.toLowerCase(); 15 //ieの場合 16 if(userAgent.indexOf('trident') != -1 || userAgent.indexOf('msie') != -1){ 17 if(document.body.insertAdjacentHTML == null) return; 18 var sWebBrowserCode = '<object width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>'; 19 document.body.insertAdjacentHTML('beforeEnd', sWebBrowserCode); 20 var objWebBrowser = document.body.lastChild; 21 if(objWebBrowser == null) return; 22 objWebBrowser.ExecWB(7, 1); 23 document.body.removeChild(objWebBrowser); 24 //それ以外 25 }else{ 26 window.print(); 27 } 28 } 29</script> 30 31</body> 32 33</html>
判定用のスクリプトは、javascriptで印刷プレビュー【Edge,IE11】のページから引用しています。
XAMPP環境だとこれでうまく動いているのですが、Linux(CentOS7)環境下で同じように、印刷ボタンをクリックして、スクリプトを実行すると、
objWebBrowser.ExecWB(7, 1); ```の部分で、”**メンバーが見つかりません。**”というエラーメッセージがIEの開発コンソールから表示されます。なお、MS系統以外のブラウザなら問題なく、印刷プレビューページが表示されます。 ### やったこと - なにかインストールしなければいけないライブラリがあるのかとwebサイトを隈なく探してみたのですが、具体的な解決策が見つかりませんでした。 - 判定文に問題があるのかと思い、if条件を外しましたが、同じようにエラーが表示されました。
回答1件
あなたの回答
tips
プレビュー