2012-03-01 9 views
0

こんにちは、このjFrameをIE8/9で動作させようとしています。IEで動作していないJFrame jFrameがFFにあります

画像を印刷するためのコードはこれです:

function PrintElem(elem) 
{ 
var strFrameName = ("printer-" + (new Date()).getTime()); 
var jFrame = $("<iframe name='" + strFrameName + "'>"); 

jFrame 
    .css("width", "1px") 
    .css("height", "1px") 
    .css("position", "absolute") 
    .css("left", "-9999px") 
    .appendTo($("body:first")) 
; 

var objFrame = window.frames[ strFrameName ]; 
var objDoc = objFrame.document; 
var theHTML = $(elem).html(); 

theHTML = theHTML.replace("display:none","display:inline"); 
objDoc.open(); 
objDoc.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"); 
objDoc.write("<html>"); 
objDoc.write("<body>"); 
objDoc.write("<head>"); 
objDoc.write("</head>"); 
objDoc.write(theHTML); 
objDoc.write("</body>"); 
objDoc.write("</html>"); 
objDoc.close(); 
objFrame.focus(); 
objFrame.print(); 
} 

、私はこれをやって、それをオフに設定:

<div id="printable"><IMG SRC="picturesFromServer.asp?PhotoId=310481" style="display:none;"></div> 
<IMG SRC="picturesFromServer.asp?PhotoId=310481" width="240" height="320"><br> 
</form> 

<input type="button" value="Print Division" onclick="PrintElem('#printable')" /> 

それはFFでうまくページを表示し、それを印刷しますが、IE、それに現在のページのみを表示します。私はJFrameのために、このウェブサイトから見つけたコードを使用しています

http://www.bennadel.com/blog/1591-Ask-Ben-Print-Part-Of-A-Web-Page-With-jQuery.htm

とヘルプは素晴らしいことです!デビッド

+0

http://projects.erikzaadi.com/jQueryPlugins/jQuery.printElement/を見てください。これはFirefoxでも動作します。 – arunes

+0

@arunes:デモサイトを試してみると、半分の時間は動かないようです... – StealthRT

答えて

0

は、それが私の作品

jFrame.css("opacity", "0").css("height", "0px").appendTo($("body:first")); 

試してみてください。表示:なし;すなわち、認識されません。

関連する問題