jQuery列印網頁指定區域

antzone發表於2018-07-14

本章節分享一段程式碼例項,它實現了列印網頁指定區域內容的功能。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
#printArea{
  width:500px; 
  text-align:left;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
function printHtml(html) {
  var bodyHtml=document.body.innerHTML;
  document.body.innerHTML=html;
  window.print();
  document.body.innerHTML=bodyHtml;
}
function onprint(){
  var html=$("#printArea").html();
  printHtml(html);
}
$(document).ready(function(){
  $("#btnPrint").click(function(){
    onprint()
  })
});
</script>
</head>
<body>
<div>
  <div id="printArea">螞蟻部落的url地址是softwhy.com</div>
  <div><input type="button" id="btnPrint" value="檢視效果" /></div>
</div>
</body>
</html>

上面的程式碼實現了我們的要求,下面簡單介紹一下它的實現原理。

在預設狀態下,列印的是body中的內容,於是,我們就可以將要列印的內容暫時設定為body的innerHTML內容。

當列印完成以後,再將原來的body內容還原,原來就是如此簡單。

相關文章