Jquery JFrame не работает в IE, но находится в FF - PullRequest
0 голосов
/ 01 марта 2012

Привет всем, я пытаюсь заставить этот jFrame работать в IE8 / 9, поскольку у него нет проблем с работой в 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

И помощь была бы отличной!

David

1 Ответ

0 голосов
/ 13 августа 2013

Попробуйте

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

это работает для меня. Дисплей: нет; не будет распознан т.е..

...