1. 程式人生 > >JavaScript實現點選按鈕直接列印

JavaScript實現點選按鈕直接列印

很多網站都有此功能,當瀏覽到底部時都會有一個列印按鈕,點選列印按鈕就可以完成列印功能,功能非常不錯,人性化,下面通過本文給大家介紹JavaScript實現點選按鈕就列印的程式碼,需要的朋友參考下

很多網站都有此功能,當瀏覽到底部時都會有一個列印按鈕,點選列印按鈕就可以完成列印功能,功能非常不錯,人性化,程式碼非常的簡單。

<a href="javascript:window.print()">指令碼之家</a>

也就是隻要呼叫window.print()函式就可以實現列印當前頁面。

但是上面的並不完美,因為有些網頁上的很多內容都不需要列印,下面介紹一下如何列印頁面中的指定內容。

程式碼如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset=" utf-8">
		<meta name="author" content="" />
		<title>指定被列印的內容</title>
		<script language="javascript">
			function printdiv(printpage) {
				var newstr = printpage.innerHTML;
				var oldstr = document.body.innerHTML;
				document.body.innerHTML = newstr;
				window.print();
				document.body.innerHTML = oldstr;
				return false;
			}
			window.onload = function(){
				var bt = document.getElementById("bt");
				var div_print = document.getElementById("div_print");
				bt.onclick = function(){
					printdiv(div_print);
				}
			}
		</script>
	</head>

	<body>
		<div id="div_print">
			<h1 style="Color:Red">這是要被列印的內容</h1>
		</div>
		<div style="Color:Red">歡迎您</div>
		<input name="print" type="button" id="bt" value="點選列印" />
	</body>
</html>

特別說明:列印預覽需要將程式碼複製到本機測試,否則會出錯。

以上程式碼實現了列印網頁指定內容的效果,下面簡單介紹一下實現過程。

一.實現原理:

在js程式碼中使用document.body.innerHTML =newstr,動態原來body中的內容替換為要列印的內容,在列印過後,在將原來的內容還原,原理就是這麼簡單,具體可以參閱程式碼註釋。

二.程式碼註釋:

1.function printdiv(printpage){},宣告一個控制列印的函式,引數是一個物件,這個物件中的內容將要被列印。
2.var newstr = printpage.innerHTML; ,獲取要列印的內容。
3.var oldstr = document.body.innerHTML,原來body中的內容。
4. document.body.innerHTML =newstr,用將要列印的內容替換原來body中的內容。
5.window.print(),開始列印。
6.document.body.innerHTML=oldstr,再將原來body中的內容還原。

三.相關閱讀:

以上內容比較簡單,並有單獨的程式碼註釋幫助大家學習js實現點選按鈕就列印功能,希望本文對大家有所幫助。