100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > js使用window.print()实现打印功能

js使用window.print()实现打印功能

时间:2024-03-29 03:18:04

相关推荐

js使用window.print()实现打印功能

js使用window.print()来实现打印功能

1.首先在需要打印的内容标签上面绑定ref

<div ref="tableRef">需要打印的内容</div><!--点击按钮打印--><el-button @click="billPrintClick" >打印</el-button>

2.按钮打印事件

billPrintClick() {let newstr = this.$refs.tableRef.innerHTML // 获取需要打印的内容let oldstr = document.body.innerHTML // 获取别打印页面的内容document.body.innerHTML = newstr // 获取表格表头,表格内容改变打印内容字体的颜色document.getElementsByTagName('thead')[0].style.color = '#000'document.getElementsByTagName('tbody')[0].style.color = '#000'window.print()document.body.innerHTML = oldstrwindow.location.reload() // 退出刷新页面return false}

3.设置打印布局(横向、纵向、边距)

@media print {@page {// 纵向size: portrait; // 横向size: landscape;// 边距margin: 0cm 0cm 0cm 0cm;}}

4.去除浏览器默认页眉页脚

打印时默认有页眉页脚信息,显示在页面外边距范围,我们可以通过去除页面模型page的外边距,使其隐藏页眉页脚信息,再通过设置 body 元素的 margin 来保证打印出来的页面带有外边距

@media print {@page {margin: 0;}body {margin: 1cm;}}

window.open()使用新窗口打印

我们还可以使用新窗口打印,将要打印的HTML,赋值给新窗口的body,打印之后我们再将之关闭

// 获取打印的区域let newstr = this.$refs.tableRef.innerHTML; // 将打印的区域赋值给新窗口body,进行打印let newWindow = window.open('','');newWindow.document.write(newstr);newWindow.window.print();newWindow.window.close(); // 打印完成后关闭后新窗口

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。