真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

代碼示例js實(shí)現(xiàn)瀏覽器打印功能

最近接觸到一個(gè)新需求,實(shí)現(xiàn)打印機(jī)打印小票的功能。打的一桌子小票(慚愧),不過(guò)也基本滿足了業(yè)務(wù)上的需求,現(xiàn)在分享一下如何實(shí)現(xiàn)(好記性不如爛筆頭)

曹妃甸網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司2013年開(kāi)創(chuàng)至今到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

先上代碼

// 布局代碼

//js 部分代碼var f = document.getElementById('printf'); if (f) { document.getElementById("print_content").removeChild(f); } var printhtml = `

${this.ticket.title}

--------------------------------------

提貨點(diǎn):${this.ticket.pickUpAddress}

商品名稱(chēng):${this.ticket.commodityName}

下單時(shí)間:${this.ticket.paymentTime}

提貨人:${this.ticket.receiver}

聯(lián)系電話:${this.ticket.receiverPhone}

提貨碼:${this.ticket.pickUpCode}

提貨時(shí)間:${this.ticket.submissionTime}

.

` if (!!window.ActiveXObject || "ActiveXObject" in window) { // 針對(duì)IE進(jìn)行適配 var HKEY_Root, HKEY_Path, HKEY_Key; HKEY_Root = "HKEY_CURRENT_USER"; HKEY_Path = "\\\\Software\\\\Microsoft\\\\Internet Explorer\\\\PageSetup\\\\"; //設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳為空 function PageSetup_Null() { var Wsh = new ActiveXObject("WScript.Shell"); HKEY_Key = "header"; Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, ""); HKEY_Key = "footer"; Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, ""); HKEY_Key = "margin_left" Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, "0"); //鍵值設(shè)定--左邊邊界 HKEY_Key = "margin_top" Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, "0"); //鍵值設(shè)定--上邊邊界 HKEY_Key = "margin_right" Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, "0"); //鍵值設(shè)定--右邊邊界 HKEY_Key = "margin_bottom" Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, "0"); //鍵值設(shè)定--下邊邊界 } printhtml = `

${this.ticket.title}

------------------------------------------------

提貨點(diǎn):${this.ticket.pickUpAddress}

商品名稱(chēng):${this.ticket.commodityName}

下單時(shí)間:${this.ticket.paymentTime}

提貨人:${this.ticket.receiver}

聯(lián)系電話:${this.ticket.receiverPhone}

提貨碼:${this.ticket.pickUpCode}

提貨時(shí)間:${this.ticket.submissionTime}

.

` } var iframe = document.createElement('iframe'); iframe.id = 'printf'; iframe.style.width = '0'; iframe.style.height = '0'; iframe.style.border = "none"; document.getElementById("print_content").appendChild(iframe); setTimeout(() => { iframe.contentDocument.write(printhtml); iframe.contentDocument.close(); iframe.contentWindow.focus(); iframe.contentWindow.print(); }, 100)

因?yàn)橐蟛荒馨汛蛴〉臄?shù)據(jù)顯示在頁(yè)面上,所以通過(guò)iframe的方式去實(shí)現(xiàn)。單純的截取字符串重新賦值body內(nèi)容能進(jìn)行打印卻把打印的內(nèi)容展現(xiàn)在頁(yè)面中了,所以不行。

打印針對(duì)IE的瀏覽器進(jìn)行了一定程度的調(diào)整,IE打印要做特定的處理,詳見(jiàn)上面判斷代碼。打印內(nèi)容通過(guò)模板字符串加內(nèi)聯(lián)樣式去實(shí)現(xiàn)。滿足了基本需求。

是否應(yīng)該也通過(guò)截取頁(yè)面字符串的方式去做可能比較浪費(fèi)性能些,為什么這么說(shuō)?因?yàn)闃邮皆诖蛴〉男∑鄙嫌幸欢ǔ潭鹊钠?,修了東墻破了西墻,只能采取相對(duì)的方式取舍。如果這種寫(xiě)法不滿足,可以采取截取字符串寫(xiě)class嘗試。

相關(guān)學(xué)習(xí)推薦:javascript視頻教程


名稱(chēng)欄目:代碼示例js實(shí)現(xiàn)瀏覽器打印功能
標(biāo)題網(wǎng)址:http://weahome.cn/article/chsoos.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部