- - PR -
コンテキストメニューでの印刷方法(IE)
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-03-08 22:51
Javascriptを使っていますが、ユーザから以下の要望がありました。
「右クリックで表示されるコンテキストメニューに印刷のみができるようにしたい。」 そこで、以下のコードにより、コンテキストメニューから「印刷」ができるようにしたのですが、その印刷内容が元の画面でなく、コンテキストメニューが印刷されてしまいます。 どなたか、コンテキストメニューを表示している元の画面を印刷する方法をご存知でしたら、ご教授ください。 <<コンテキストメニューから印刷するスクリプト>> <HTML> <HEAD> <META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript"> <TITLE>右クリックのポップアップメニュー</TITLE> <SCRIPT LANGUAGE="JScript"> <!-- var background_out = "#C0C0C0"; //マウスが外れた時の背景色 var background_over = "#FFFFFF"; //マウスが乗った時の背景色 if(window.createPopup){ var menu_status = ""; //メニュー内容 var oPopup = window.createPopup(); //ポップアップオブジェクト作成 menu_status = '<DIV STYLE="border:1px solid black; background:' + background_out + ';">'; //メニュー内容作成 menu_status += ('<DIV ' + 'onmouseover="this.style.background=\'' + background_over + '\';" ' + 'onmouseout="this.style.background=\'' + background_out + '\';" ' + 'onClick="window.print();;" ' + 'STYLE="font-size:70%; height:26px; padding:3px; cursor:hand; border-bottom:1px outset gray; border-right:1px outset gray;">印刷</DIV>'); menu_status += '</DIV>'; document.oncontextmenu = ContextMenu; //右クリックイベント発生時 } function ContextMenu(){ if(window.createPopup){ //ポップアップに表示する内容を設定 oPopup.document.body.innerHTML = menu_status; //ポップアップを表示する oPopup.show(event.clientX, event.clientY, 200, 30, document.body); return(false); } } //--> </SCRIPT> </HEAD> <BODY> こちらの本体を印刷したい。 </BODY> </HTML> | ||||
|
投稿日時: 2006-03-08 23:24
window.print();をwindow.parent.print();にしてみてはいかがでしょうか。
| ||||
|
投稿日時: 2006-03-08 23:37
早速、試してみました。 うまくいきました。 ありがとうございました。 基本ができていなかったようで、お恥ずかしい限りです。 もっと、じっかり勉強します。 |
1