Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript获取要在web上打印的页面数_Javascript_Html_Forms_Function - Fatal编程技术网

使用javascript获取要在web上打印的页面数

使用javascript获取要在web上打印的页面数,javascript,html,forms,function,Javascript,Html,Forms,Function,如何使用JavaScript检测表单上的打印页面数 我需要得到一个表单的页数,这样我就可以在每页打印时粘贴水印 谢谢。好吧,这是不可能的。如果没有ActiveX控件或其他插件,普通JavaScript无法与打印机交互以确定设置、页码或任何内容 在某些浏览器中,您可以使用CSS指定页面将在何处断开并以这种方式跟踪页码,但您必须依靠用户在打印之前不要缩放页面或增加页面的文本大小 我认为这是不可能做到的(正如Margg指出的,CSS3除外,但这还不够广泛使用) 您可以通过在之后插入具有分页符的元素或在

如何使用JavaScript检测表单上的打印页面数

我需要得到一个表单的页数,这样我就可以在每页打印时粘贴水印


谢谢。

好吧,这是不可能的。如果没有ActiveX控件或其他插件,普通JavaScript无法与打印机交互以确定设置、页码或任何内容


在某些浏览器中,您可以使用CSS指定页面将在何处断开并以这种方式跟踪页码,但您必须依靠用户在打印之前不要缩放页面或增加页面的文本大小

我认为这是不可能做到的(正如Margg指出的,CSS3除外,但这还不够广泛使用)

您可以通过在之后插入具有分页符的元素或在之前插入具有分页符的元素,为浏览器提供一些指针,但这并不能完全确定页面的打印方式

根据您的布局,您可以通过将绝对定位的图像放置在一个元素上,该元素之前有
分页符:always
。我从来没有试过,但是,你将不得不玩它,看看它是否有任何好处

背景图像显然不是一个选项,因为在我所知道的所有浏览器中,默认情况下它们都被排除在打印之外


我认为,如果你想获得可靠的水印,你必须求助于生成PDF文件,例如使用基于PHP的库。

我建议你阅读


(使用CSS3)

考虑到即使标准纸张尺寸有所不同(字母与A4),这也不太可行。当我需要这种控件时,我通常生成一个PDF

任何浏览器都支持它吗?@Jaro不,一点也不支持。只有现代浏览器支持这一点
@page front-matter :left {
  @bottom-left {
    content: counter(page, lower-roman);
  }
}