Skip to content

Instantly share code, notes, and snippets.

@jubstuff
Created February 24, 2015 14:47
Show Gist options
  • Select an option

  • Save jubstuff/f6056569bea9558c3776 to your computer and use it in GitHub Desktop.

Select an option

Save jubstuff/f6056569bea9558c3776 to your computer and use it in GitHub Desktop.
Print a page in an hidden iframe
<script type="text/javascript">
function closePrint () {
document.body.removeChild(this.__container__);
}
function setPrint () {
this.contentWindow.__container__ = this;
this.contentWindow.onbeforeunload = closePrint;
this.contentWindow.onafterprint = closePrint;
this.contentWindow.focus(); // Required for IE
this.contentWindow.print();
}
function printPage (sURL) {
var oHiddFrame = document.createElement("iframe");
oHiddFrame.onload = setPrint;
oHiddFrame.style.visibility = "hidden";
oHiddFrame.style.position = "fixed";
oHiddFrame.style.right = "0";
oHiddFrame.style.bottom = "0";
oHiddFrame.src = sURL;
document.body.appendChild(oHiddFrame);
}
</script>
<a class="dk-print-car-detail" href="#" onclick="printPage('<?php echo $listing_link; ?>');return false;" title="Stampa Modelli"><?php _e('Stampa Modelli', 'dk'); ?></a>
@artfultoucher
Copy link

Thanks a million!! I was just looking for exactly that. I am more a backend/laravel guy and this would have taken me 2 hours myself to work out.

@imhazige
Copy link

imhazige commented Dec 7, 2021

This does not work in some case, it sometimes show a blank preview to print.

@vspar
Copy link

vspar commented Jan 26, 2022

Very helpful, worked fine for me in Chrome. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment