1、程序說明
1) 此程序可以實現選擇頁面中的區域進行打印,以iframe方式進行打印;
2) 與原生態的print() 區別在於,取消打印頁面後可以完整保留當前訪問頁面的內容。
2、代碼部分
1) JS 函數:
. 代碼如下:
function do_print(id_str)//id-str 打印區域的id
{
var el = document.getElementById(id_str);
var iframe = document.createElement('IFRAME');
var doc = null;
iframe.setAttribute('style', 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;');
document.body.appendChild(iframe);
doc = iframe.contentWindow.document;
// 引入打印的專有CSS樣式,www.111Cn.net根據實際修改
doc.write("<LINK rel="stylesheet" type="text/css" href="css/print.css">");
doc.write('<div>' + el.innerHTML + '</div>');
doc.close();
iframe.contentWindow.focus();
iframe.contentWindow.print();
if (navigator.userAgent.indexOf("MSIE") > 0)
{
document.body.removeChild(iframe);
}
}
2) HTML:
. 代碼如下:
// 打印區域:
<div id="print_box">
......
</div>
// 調用打印
<button onclick="javascript:do_print('print_box');">打印</button>
3. 測試
點擊頁面上的打印按鈕,即可測試打印;
除了上面方法我們還可以通過jquery來實例,代碼如下
. 代碼如下:
<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery.PrintArea.js"></script>
<script>
$(document).ready(function(){
$("input#biuuu_button").click(function(){
$("div#myPrintArea").printArea();
});
});
</script>
<input id="biuuu_button" type="button" value="打印"></input>
<div id="myPrintArea">.....文本打印部分.....</div>
如果要實現區域打印我們可嘗試下面方法
下面本文分享一種超簡單的方法實現頁面的打印功能,不僅可以打印整個頁面,還可以打印頁面某塊區域
. 代碼如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="javascript">
function printdiv(printpage){
var headstr="<html><head><title></title></head><body>";
var footstr="</body>";
var newstr=document.all.item(printpage).innerHTML;
var oldstr=document.body.innerHTML;
document.body.innerHTML=headstr+newstr+footstr;
window.print();
document.body.innerHTML=oldstr;
return false;
}
</script>
<title>div print</title>
</head>
<body>
<input type="button" onClick="printdiv('div_print');" value=" 打印 ">
<div id="div_print">
<h1 style="Color:Red">被打印區域:www.jb51.net</h1>
</div>
這塊區域是打印不到的!
</body>
</html>