如何阻止用户打印HTML页面的多个副本?

时间:2013-02-27 06:35:54

标签: javascript html

通常,如果我们打印一个页面,它将打印整个页面,我们有选项来打印份数。这是问题,对于我的erp应用程序我不想在打印对话框中提供份数,不知何故该选项应该通过程序(或)禁用 我的页面应该只打印一份,而不需要打印对话框本身。

因此,打印选项应该可用,但我希望用户只能打印一个我的页面副本。怎么做到这一点?

4 个答案:

答案 0 :(得分:3)

忘记它,除了构建自己的浏览器之外你无能为力:D并强制用户只使用那个。

答案 1 :(得分:1)

您无法强制浏览器仅允许打印一页的副本。那是不可能的。

此外,在HTML / Javascript中无法禁用打印对话框(以避免完全打印页面)。所以,你无能为力。

但是,您可以为打印布局定义不同的CSS,这样您就可以“隐藏”所有元素,而您的用户将无法打印您的页面(但这可能很烦人):

@media screen {
    body { /* css */}
}
@media print {
    body { display: none; }
}

答案 2 :(得分:0)

如果您正在从CD运行该页面,则可以使用.bat技巧从命令行静默打印。但是从Web浏览器中,您无法绕过打印对话框。如果可能的话,广告商会将传单打印到您的打印机。

但是,您可以使用此HTML / Javascript One Click Print (no dialogs)并强制用户使用Internet Explorer。除非绝对必要,否则不建议这样做。

答案 3 :(得分:0)

你可以这样做,但仅限于内联网和IE(我知道)。

你不会在公共网站上这样做,因为它要求在页面上操纵ActiveX,你也必须降低浏览器的安全级别(在我的情况下是IE),这只能用于受控环境并提高安全性风险。