JS打印組合功能
本文為大家分享了JS打印組合功能,功能全面,供大家參考,具體內(nèi)容如下
1.局部打印--即想打印什么地方就打印什么地方
解決辦法:
將不想打印的地方隱藏起來
<style type="text/css" media=print>
.noprint{display : none }
分頁的時候用
.PageNext{page-break-after: always;}
然后給不想打印的頁面元素添加: class="Noprint" ,那就不會出現(xiàn)在打印和打印預(yù)覽中了。
想分頁的地方添加: <div class="PageNext"></div> 就可以了。
</style>
在將不想打印的地方控制起來
<p class="noprint">不需要打印的地方</p>
2.引用組建
WebBrowser是IE內(nèi)置的瀏覽器控件,無需用戶下載.
WebBrowser控件
<object ID='WebBrowser' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object>
關(guān)于這個組件的用法,列舉如下:
WebBrowser.ExecWB(1,1) 打開
Web.ExecWB(2,1) 關(guān)閉現(xiàn)在所有的IE窗口,并打開一個新窗口
Web.ExecWB(4,1) 保存網(wǎng)頁
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印預(yù)覽
Web.ExecWB(8,1) 打印頁面設(shè)置
Web.ExecWB(10,1) 查看頁面屬性
Web.ExecWB(15,1) 好像是撤銷,有待確認
Web.ExecWB(17,1) 全選
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 關(guān)閉窗體無提示
3.實例
<head>
<script language="javascript">
<style type="text/css" media=print>
.noprint{display : none }
</style>
function printsetup()
{
// 打印頁面設(shè)置
wb.execwb(8,1);
}
function printpreview(){
// 打印頁面預(yù)覽
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="打印頁面設(shè)置" onclick="javascript:printsetup();" />
<input type="button" name="button_show" value="打印預(yù)覽" onclick="javascript:printpreview();" />
</p>
</body>
3.JS 實現(xiàn)簡單的頁面局部打印
function preview(oper)
{
if (oper < 10){
bdhtml=window.document.body.innerHTML;//獲取當前頁的html代碼
sprnstr="<!--startprint"+oper+"-->";//設(shè)置打印開始區(qū)域
eprnstr="<!--endprint"+oper+"-->";//設(shè)置打印結(jié)束區(qū)域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //從開始代碼向后取htm
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//從結(jié)束代碼向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
}
else {
window.print();
}
}
使用很簡單 將頁面內(nèi)要打印的內(nèi)容加入中間<!--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+"-->";//設(shè)置打印開始區(qū)域
eprnstr="<!--endprint"+oper+"-->";//設(shè)置打印結(jié)束區(qū)域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //從開始代碼向后取htm
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//從結(jié)束代碼向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
}
else {
window.print();
}
}
使用很簡單 將頁面內(nèi)要打印的內(nèi)容加入中間<!--startprint1-->XXXXX<!--endprint1-->
再加個打印按紐 onclick=preview(1)
更多關(guān)于js打印功能的內(nèi)容,點擊《js打印功能匯總》專題學(xué)習(xí)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript利用Immerjs實現(xiàn)不可變數(shù)據(jù)
Immerjs?是一個用于管理?JavaScript?不可變數(shù)據(jù)結(jié)構(gòu)的庫,它可以幫助我們更輕松地處理狀態(tài)的變化,并減少冗余代碼。本文就來帶大家揭秘如何利用Immerjs實現(xiàn)不可變數(shù)據(jù),感興趣的可以了解一下2023-04-04
JS實現(xiàn)的漢字與Unicode碼相互轉(zhuǎn)化功能分析
這篇文章主要介紹了JS實現(xiàn)的漢字與Unicode碼相互轉(zhuǎn)化功能,結(jié)合實例形式分析了javascript實現(xiàn)漢字與Unicode碼轉(zhuǎn)換相關(guān)操作技巧與注意事項,需要的朋友可以參考下2018-05-05
微信小程序?qū)崿F(xiàn)購物車選擇規(guī)格顏色效果
這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)購物車選擇規(guī)格顏色選中效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01
Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)
Highcharts 是一個用純JavaScript編寫的一個圖表庫, 能夠很簡單便捷的在web網(wǎng)站或是web應(yīng)用程序添加有交互性的圖表,并且免費提供給個人學(xué)習(xí)、個人網(wǎng)站和非商業(yè)用途使用,通過本文給大家介紹Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)的相關(guān)知識,感興趣的朋友一起學(xué)習(xí)吧2015-12-12
詳解JavaScript如何利用異步解密回調(diào)地獄
為了更好地處理這些異步操作,JavaScript?引入了異步編程的概念,這篇文章主要來和大家詳細聊聊JavaScript中異步的相關(guān)應(yīng)用,希望對大家有所幫助2024-02-02

