JS 实现分页打印

Posted 折翼的飞鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 实现分页打印相关的知识,希望对你有一定的参考价值。

在调用window.print()时,可以实现打印效果,但内容太多时要进行分页打印。

在样式中有规定几个打印的样式

page-break-beforepage-break-after CSS属性并不会修改网页在屏幕上的显示,这两个属性是用来控制文件的打印方式。

每个打印属性都可以设定4种设定值:auto、always、left和right。其中Auto是默认值,只有在有需要时,才需设定分页符号 (Page breaks)。

page-break-before若设定成always,则是在遇到特定的组件时,打印机会重新开始一个新的打印页。

page-break-before若设定成left,则会插入分页符号,直到指定的组件出现在一个左边的空白页上。

page-break-before若设定成right,则会插入分页符号,直到指定的组件出现在一个右边的空白页上。

page-break-after属性会将分页符号加在指定组件后,而非之前。

在下列程序中您将可以看到这些属性的设定,

 

<html>
  <HEAD>
    <TITLE>Listing 14-4</TITLE>
  </HEAD>
  <BODY>
    <DIV>This is the first DIV.</DIV>
    <DIV STYLE="page-break-before:always">This is the second DIV.</DIV>
    <DIV STYLE="page-break-after:always">This is the third DIV.</DIV>
    <DIV>This is the fourth DIV.</DIV>
    <DIV STYLE="page-break-before:right">This is the fifth DIV.</DIV>
    <DIV STYLE="page-break-after:right">This is the sixth DIV.</DIV>
    <DIV>This is the last DIV.</DIV>
  </BODY>
</HTML>
描述
auto 默认值。如果必要则在元素前插入分页符
always 在元素前插入分页符
avoid 避免在元素前插入分页符
left 在元素之前足够的分页符,一直到一张空白的左页为止
right 在元素之前足够的分页符,一直到一张空白的右页为止
inherit 规定应该从父元素继承 page-break-before 属性的设置

 

在Dom对象中pageBreakBefore属性

语法:

    Object.style.pageBreakBefore=auto|always|avoid|left|right

<html>
  <head>
    <script type="text/javascript">
      function setPageBreak()
      {
        document.getElementById("p2").style.pageBreakBefore="always";
      }
    </script>
  </head>
  <body>
    <p>This is a test paragraph.</p>
    <input type="button" onclick="setPageBreak()" value="Set page-break" />
    <p id="p2">This is also a test paragraph.</p>
  </body>
</html>

 

 

 

 

 

以上是关于JS 实现分页打印的主要内容,如果未能解决你的问题,请参考以下文章

使用ScriptX控件实现IE浏览器分页打印功能

php实现打印的代码??

js分页高亮问题

在分页之后js就失效了,是要在表格里添加一列,第一页就有但是第二页以后就没有了

ElementUI的分页功能bug

我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情