DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JS打印組合功能
JS打印組合功能
編輯:關於JavaScript     

本文為大家分享了JS打印組合功能,功能全面,供大家參考,具體內容如下

1.局部打印--即想打印什麼地方就打印什麼地方
 解決辦法:
 將不想打印的地方隱藏起來
 <style type="text/css" media=print>
.noprint{display : none } 

分頁的時候用 
.PageNext{page-break-after: always;} 
然後給不想打印的頁面元素添加: class="Noprint" ,那就不會出現在打印和打印預覽中了。
想分頁的地方添加:  <div class="PageNext"></div> 就可以了。
</style>
在將不想打印的地方控制起來 
<p class="noprint">不需要打印的地方</p> 

2.引用組建
WebBrowser是IE內置的浏覽器控件,無需用戶下載. 
WebBrowser控件
<object ID='WebBrowser' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object>

關於這個組件的用法,列舉如下:
WebBrowser.ExecWB(1,1) 打開
Web.ExecWB(2,1) 關閉現在所有的IE窗口,並打開一個新窗口
Web.ExecWB(4,1) 保存網頁
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印預覽
Web.ExecWB(8,1) 打印頁面設置
Web.ExecWB(10,1) 查看頁面屬性
Web.ExecWB(15,1) 好像是撤銷,有待確認
Web.ExecWB(17,1) 全選
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 關閉窗體無提示

3.實例

 <head>
<script language="javascript"> 
<style type="text/css" media=print>
.noprint{display : none }
</style>
function printsetup()
{ 
 // 打印頁面設置 
  wb.execwb(8,1); 
} 
function printpreview(){ 
// 打印頁面預覽 
wb.execwb(7,1); 
} 
function printit() 
{ 
 if(confirm('確定打印嗎?'))
 { 
  wb.execwb(6,6) 
 } 
} 
</script>
</head> 
<body>
<p class="noprint">
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" id="wb" name="wb" width="0"></OBJECT> 
<input type="button" name="button_print" value="打印" onclick="javascript:printit()" /> 
<input type="button" name="button_setup" value="打印頁面設置" onclick="javascript:printsetup();" /> 
<input type="button" name="button_show" value="打印預覽" onclick="javascript:printpreview();" /> 
</p>
</body> 

3.JS 實現簡單的頁面局部打印

function preview(oper)
{
 if (oper < 10){
 bdhtml=window.document.body.innerHTML;//獲取當前頁的html代碼
 sprnstr="<!--startprint"+oper+"-->";//設置打印開始區域
 eprnstr="<!--endprint"+oper+"-->";//設置打印結束區域
 prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //從開始代碼向後取htm
 prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//從結束代碼向前取html
 window.document.body.innerHTML=prnhtml;
 window.print();
 window.document.body.innerHTML=bdhtml;
} 
else {
  window.print();
  }
}

使用很簡單 將頁面內要打印的內容加入中間<!--startprint1-->XXXXX<!--endprint1-->
再加個打印按紐 onclick=preview(1)

 4、控制"縱打"、 橫打”和“頁面的邊距。
(1)<script defer>

function SetPrintSettings() { 
 // -- advanced features 
 factory.printing.SetMarginMeasure(2) // measure margins in inches 
 factory.SetPageRange(false, 1, 3) // need pages from 1 to 3 
 factory.printing.printer = "HP DeskJet 870C" 
 factory.printing.copies = 2 
 factory.printing.collate = true 
 factory.printing.paperSize = "A4" 
 factory.printing.paperSource = "Manual feed" 

 // -- basic features 
 factory.printing.header = "This is MeadCo" 
 factory.printing.footer = "Advanced Printing by ScriptX" 
 factory.printing.portrait = false 
 factory.printing.leftMargin = 1.0 
 factory.printing.topMargin = 1.0 
 factory.printing.rightMargin = 1.0 
 factory.printing.bottomMargin = 1.0 
} 
</script> 

function preview(oper)
{
 if (oper < 10){
 bdhtml=window.document.body.innerHTML;//獲取當前頁的html代碼
 sprnstr="<!--startprint"+oper+"-->";//設置打印開始區域
 eprnstr="<!--endprint"+oper+"-->";//設置打印結束區域
 prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //從開始代碼向後取htm
 prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//從結束代碼向前取html
 window.document.body.innerHTML=prnhtml;
 window.print();
 window.document.body.innerHTML=bdhtml;
} 
else {
  window.print();
  }
}

使用很簡單 將頁面內要打印的內容加入中間<!--startprint1-->XXXXX<!--endprint1-->
再加個打印按紐 onclick=preview(1) 

更多關於js打印功能的內容,點擊《js打印功能匯總》專題學習

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved