前端插件,打印机小demo演示
插件:jquery.PrintArea.js
// JavaScript Document
(function($) {
var printAreaCount = 0;
$.fn.printArea = function()
{
var ele = $(this);
var idPrefix = "printArea_";
removePrintArea( idPrefix + printAreaCount );
printAreaCount++;
var iframeId = idPrefix + printAreaCount;
var iframeStyle = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
iframe = document.createElement('IFRAME');
$(iframe).attr({ style : iframeStyle,
id : iframeId
});
document.body.appendChild(iframe);
var doc = iframe.contentWindow.document;
$(document).find("link")
.filter(function(){
return $(this).attr("rel").toLowerCase() == "stylesheet";
})
.each(function(){
doc.write('<link type="text/css" rel="stylesheet" href="' +
$(this).attr("href") + '" >');
});
doc.write('<div class="' + $(ele).attr("class") + '">' + $(ele).html() + '</div>');
doc.close();
var frameWindow = iframe.contentWindow;
frameWindow.close();
frameWindow.focus();
frameWindow.print();
}
var removePrintArea = function(id)
{
$( "iframe#" + id ).remove();
};
})(jQuery);
代码演示:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<style type="text/css" src="print.css"></style>
<script type="text/javascript" src="jquery-1.8.3.js"></script>
<script type="text/javascript" src="jquery.PrintArea.js"></script>
<div id="printArea">
<style type="text/css">
.t9{
text-align:left; font-size: 16px; line-height:36px; padding:0px 82px;
}
</style>
<script type="text/javascript">
function onlinePrint(){
jQuery("#printArea").printArea();
}
</script>
<body>
<div class="t9">
打印
</div>
</div>
<div style="text-align:center;margin-top: 60px" >
<input type="button" value="打印" onclick="onlinePrint();"/>
</div>
</body>
</html>