我们如何阻止用户使用不同的方法打印网页?
有没有办法停止打印网页?
我们可以使用javascript处理这3个事件吗? 或者我们可以说。如果用户将执行任何这些事件。然后我想运行我的其他代码。这可能吗?
答案 0 :(得分:16)
用户计算机上的网页无法控制。用户可以执行他或她想做的任何事情,但是您可以提供PDF并禁用打印PDF。不过,如果我必须打印一些东西,我会找到一种方法来打印它。
答案 1 :(得分:12)
正如已经指出的那样,你不能这样做。但是,一个常用的技巧是尝试隐藏所有页面内容(如果正在打印):
<style type="text/css" media="print">
body { visibility: hidden; display: none }
</style>
但这无法保证能够正常工作,如果你对你正在做的事情有一个模糊的想法,那就很容易解决。
答案 2 :(得分:7)
我知道这个问题在很久以前就被问过并回答了,但是我发现它并觉得我应该把我的2美分投入。我有一个程序里面有一些版权信息,我们希望结束用户无法打印此信息,因此我所做的是创建一个单独的div,我给了课程.printable
。
我将这些行添加到CSS表格
.printable { display:none; }
@media only print {
.container { display:none !important; } <-- This is the wrapper container for all of the site data
.printable { display:block !important; } <-- This is my added printable container with a message about not printing the page
}
随着主流浏览器中新CSS引擎的改进,即使他们右键单击+打印,它也会显示.printable
框而不是内容。
然而,有人指出,如果他们真的想要,就没有办法阻止用户使用一块屏幕捕获软件来打印信息。我们认为,通过阻止印刷,我们将阻止大约99%可能以其他方式印刷信息的人。
所以这是我的2美分......希望它有助于某人
答案 3 :(得分:6)
你不能。不要浪费你的时间。
一旦用户将您网站的数据下载到他的计算机上,就再也无法控制它了。如果您不希望用户按照自己喜欢的方式处理它,不要把它放在公共网上。
答案 4 :(得分:4)
将此块添加到CSS
@media print {
body {
display: none;
}
}
这应该在打印时隐藏所有内容。
答案 5 :(得分:2)
没有可靠的方法来做到这一点。您可以截取某些按键等并使用脚本取消它们,但是当用户禁用了脚本时,则无法进行预防。此外,打印功能内置于实际的浏览器本身,您实际上无法阻止这一点。
即使是像Aviary这样的浏览器插件也会获取浏览器的屏幕截图并将其复制到内存中,这样您就无法阻止这种情况发生。然后用户可以从photoshop打印或绘制.net等。
我建议你尝试的唯一一件事就是你可以只包含print.css样式表。在该样式表中,您可能希望尝试将任何敏感内容设置为display:none。但是,即使这样也无法保证,因为用户可以简单地禁用样式表。
答案 6 :(得分:2)
我不会打击用户的期望。不要更改默认行为。
答案 7 :(得分:1)
我尝试过克里斯的这种方式
@media only print {
.container { display:none !important; }
}
正在工作。 但是,当我按F12键打开开发人员工具时,找到“ .container {display:none!important;}”行,将其删除,然后按ctrl + p,一切都会再次显示在打印窗口中。 对于阻止打印网页内容,可能没有100%的解决方案。
答案 8 :(得分:1)
无法阻止网络用户打印您的网页。但是是的,您可以设置打印处理后要打印的内容。我的意思是简单地编写如下代码:
<!DOCTYPE html>
<html>
<body onbeforeprint="abortPrint()">
<p>This is my Content</p>
<script>
function abortPrint()
{
alert("Printing is not allowed");
document.write();
}
</script>
</body>
</html>
这只会打印空白页,而不会打印您的内容。但只有这样,您才能阻止用户打印页面。
总是感谢您提出建议。
答案 9 :(得分:0)
如果您在用户的浏览器上呈现某些内容,它将成为用户的控制权。你无法抗拒用户打印。
如果您希望向用户显示某些信息,并且您不希望用户能够进行打印,则可以使用类似PDF的内容并防止其打印。
您的用法是什么?