• 締切済み

firefoxでリンクドキュメントをすべて印刷させる為に

こちらでも質問させて頂きましたが、 http://oshiete1.goo.ne.jp/qa5524085.html IEにデェフォルトで実装されているリンクドキュメントをすべて印刷という操作をfirefoxのアドオン等が実装させているまま行いたいです。 そういったアドオンやプラグインは見つからなかったのですが、 Ubiquity  http://gadget.cre8system.jp/life_hacks/firefoxubiquity.html  という FIREFOXをコマンド操作出来るアドオンがある事を見つけました。しかし、すでに国内で登録されてると情報のあるコマンドはインターネット関連のコマンドが多く、print関連のコマンドはあまり発見出来ません。このアドオンはJavascriptを使って自分のやりたい操作を自由に登録出来るそうなので、Javascriptでリンクドキュメントをすべて印刷する命令を書ければ、可能になると思ったのですが、Javascriptでリンクドキュメントをすべて印刷するソースは見つけることが出来ませんでした。Javascriptは苦手で、そこまで複雑なソースをいきなり書く事は出来ません。どなたかJavascriptを使ってリンクドキュメントをすべて印刷するというソースを書ける方いらっしゃいませんか?お願い致します。

みんなの回答

回答No.6

yyr446さんの回答通りにやりましたが、出来ませんね。 所詮はこのレベルなんでしょう。 結局質問者はお礼してないしw 可能なスクリプトで答えが欲しい所でしたねw

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.5

問題がありそうだったので、 (ダミーじゃないフレームも消されてしまう。開始の確認がない) 改善しました。 // ==UserScript== // @name allprint // @namespace xx // @include http://全て対象にしてもよいかも // ==/UserScript== var ok=confirm("全部印刷しますか?"); if (ok==true){ var links=document.getElementsByTagName("a"); var duny_frame=document.createElement("iframe"); for(var i=0;i<links.length;i++){ var url=links[i].getAttribute("href"); duny_frame.setAttribute("src",url); duny_frame.setAttribute("name","dumy"); duny_frame.style.visibility = "hidden"; duny_frame.setAttribute("onload","dumy.window.print();"); document.body.appendChild(duny_frame) } alert("全てプリント完了しましたか?"); var dumys= document.getElementsByName("dumy"); for(var i=0;i<dumys.length;i++){ document.body.removeChild(dumys[i]); } }else{alert("cancelします。");}

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.4

出来ましたよ。 FireFoxの「Greasemonky」というアドオンを使います。 https://addons.mozilla.org/ja/firefox/addon/748 「Greasemonky」の新規ユーザースクリプトで、リスト全部印刷処理を したい対象ページに対して、下記スクリプトを登録します。 // ==UserScript== // @name allprint // @namespace xx // @include http://対象にしたいサイト // ==/UserScript== window.onload = function(){ var links=document.getElementsByTagName("a"); var duny_frame=document.createElement("iframe"); for(var i=0;i<links.length;i++){ var url=links[i].getAttribute("href"); duny_frame.setAttribute("src",url); duny_frame.setAttribute("name","dumy"); duny_frame.style.visibility = "hidden"; duny_frame.setAttribute("onload","dumy.window.print();"); document.body.appendChild(duny_frame) } alert("全てプリント完了しましたか?"); var dumys= document.getElementsByTagName("iframe"); for(var i=0;i<dumys.length;i++){ document.body.removeChild(dumys[i]); } } } これって、このスクリプトの対象にしたいサイトを絞っておかないと、 無限にリンクをたどって印刷し続けようとするような....

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

window.print()てのがありましたねえ!。 どおやって使えばよいやら?? いいアイデアがでませんねえ.. ダミーのフレーム <iframe name="dumy" src="about:blank" onload="this.window.print"></iframe> を作って、src属性をリンク先分、ループ処理でまわす。 これを、Firefoxの「Greasemonky」で実行するとか...

回答No.2

そもそも、Javascriptに印刷する命令・機能はないんじゃないかと... おや出来ますがね http://www.tagindex.com/javascript/page/print.html http://labs.agenda-style.jp/blog/2009/12/ubiquity-tips-----1.html ど素人さんが横槍回答 これはウザイウザイ これで正解回答者が出る確率も低くなった

job_event_
質問者

お礼

Printコマンドがあるので、組み方はあると思うのですが。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

そもそも、Javascriptに印刷する命令・機能はないんじゃないかと...

job_event_
質問者

お礼

2の方が書いている様にあります。Javascriptを組んでUbiquityでリンクドキュメントをすべて印刷をさせたいです。 Javascriptでという操作をしたいのですが。 FIREFOXにアドオンをつけたままリンクドキュメントをすべて印刷をしたいのですが。

関連するQ&A

専門家に質問してみよう