当前位置:首页 > JavaScript

js实现打印页面

2026-01-30 11:12:56JavaScript

使用window.print()方法

调用window.print()可以直接触发浏览器的打印功能,弹出打印对话框。这是最简单的实现方式,适用于纯打印当前页面内容。

function printPage() {
  window.print();
}

打印指定区域内容

通过CSS控制仅打印页面特定部分,隐藏其他无关元素。在CSS中定义@media print规则,结合display: none隐藏非目标区域。

<style>
  @media print {
    body * {
      display: none;
    }
    .print-area, .print-area * {
      display: block;
    }
  }
</style>

<div class="print-area">仅打印此部分内容</div>
<button onclick="window.print()">打印</button>

动态生成打印内容

使用JavaScript创建隐藏的iframe或新窗口,将自定义内容注入后打印,避免影响原页面布局。

function printCustomContent(content) {
  const printWindow = window.open('', '_blank');
  printWindow.document.write('<html><head><title>打印</title></head><body>');
  printWindow.document.write(content);
  printWindow.document.write('</body></html>');
  printWindow.document.close();
  printWindow.print();
}

打印样式优化

通过CSS调整打印页面的边距、字体和分页效果,提升打印输出的可读性。

@media print {
  @page {
    size: A4;
    margin: 1cm;
  }
  body {
    font-size: 12pt;
    line-height: 1.5;
  }
  .page-break {
    page-break-after: always;
  }
}

处理打印事件

监听beforeprintafterprint事件,在打印前后执行特定逻辑(如临时修改DOM)。

js实现打印页面

window.addEventListener('beforeprint', () => {
  document.body.style.backgroundColor = 'white';
});

window.addEventListener('afterprint', () => {
  document.body.style.backgroundColor = '';
});

标签: 页面js
分享给朋友:

相关文章

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js轮播图实现原理

js轮播图实现原理

轮播图的基本原理 轮播图通过动态切换显示的内容(图片、文本等)实现视觉上的滑动效果。核心原理是利用CSS和JavaScript控制元素的显示与隐藏,或通过变换位置实现滑动动画。 实现方法一:…

js实现延迟

js实现延迟

实现延迟的方法 在JavaScript中,实现延迟操作有多种方式,以下是几种常见的方法: 使用setTimeout函数 setTimeout是JavaScript中最常用的延迟执行方法。它接受一个回…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js实现防洪

js实现防洪

防抖(Debounce)实现 防抖的核心思想是在事件触发后延迟执行回调函数,若在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口调整等场景。 function debounce(func,…