0

この一見単純なタスクに問題があります。

  1. 現在の URL を iFrame に読み込みたい。
  2. いくつかの div にアクセスして削除する必要があります。
  3. 変更した iFrame のみを印刷する必要があります。

ここに私が持っているものがありますが、ロードされた iFrame の html 要素にアクセスできません。iFrame のコンテンツは期待どおりに印刷されますが、いくつかの div を削除する必要があります。

var newWidth = "1024px";
var url = window.location;
var $iFrame = $('<iframe id="printFrame" style="width:' + newWidth + ' !important;     height:100 !important; border: 1px solid #000000;" name="printFrame"></iframe>');

$('#content-area').append($iFrame);

$iFrame
  .load(function () {

   // NEED TO DO THIS IN THE IFRAME DOCUMENT: 
   // $('#content-area').remove();
   // CANT FIGURE OUT HOW


   this.contentWindow.print(); // this prints fine
   $(this).unbind('load');
   })
   .attr('src', url);

ありがとう!ロン

4

1 に答える 1

0

なぜJavaScriptでそれをしているのですか?印刷スタイルシートを使用して、印刷したくない要素を非表示にします。

新しいスタイルシートを追加する

<link rel="stylesheet" type="text/css" media="print" href="print.css" />

適用するルールを追加するprint.css

div.noPrint { display : none; }

それでもiframeでそれを実行したい場合は、contents()を使用して要素にアクセスする必要があります。

var iframeDivs = $iFrame.contents().find("div");
于 2012-10-19T16:44:25.557 に答える