Print html of a html element
by NunoMira
HTML
<div>
Div 1
</div>
<div id="div2">
Div 2
<img src="https://tomcat.novageo.pt/cg/deskman/images/unicorn.png" alt="Girl in a jacket">
</div>
<button onclick="$('#div2').print();">
Print html of hidden div 2
</button>
JavaScript
$.fn.extend({
print: function() {
var frameName = 'printIframe';
var doc = window.frames[frameName];
if (!doc) {
$('<iframe>').hide().attr('name', frameName).appendTo(document.body);
doc = window.frames[frameName];
}
doc.document.body.innerHTML = this.html();
doc.window.print();
return this;
}
});