2015-06-02 51 views
-4

这个问题大多出于学术兴趣(部分原因是我遇到过这样的问题,只是找到了解决方法,但我想知道正确的方法)。改变window.print()Javascript功能

window.print()JavaScript函数如何决定打印页面的哪些部分?我的最终目标是向“打印”对话框添加新的字段,该字段不在原始页面中,并且能够防止打印页面中的某些内容(例如:防止将我的网页上的某些明文链接打印到纸)。

我可以编辑功能以符合我的要求吗? JS文件位于哪里?

+0

“print()方法打印当前窗口的内容。”如果您希望打印特殊数据,请在新窗口中打开此数据,然后使用print()方法。 –

+0

'window.print'不创建*对话框*,其中创建*对话框*是web浏览器,'window.print'只触发对浏览器的请求。你不会超过'window.print'。 –

+0

无需解释。这个问题将被编入索引,并成为规范答案的一个路标,这可能有助于未来人们的处境。 – Will

回答

0

是,添加一个类你没有的元素要打印并在您的样式标签中使用media="print"

然后相应地调整,你会得到你想要的。

<style type="text/css" media="print"> 
    .elementYoudontWanttoPrint { 
     display:none; 
    } 
</style> 
-1

您需要添加一个css文件,其中指定了打印介质。在这个CSS文件中,你可以编写不同的类,在其中你可以使用CSS属性轻松设置元素的可见性。

http://www.w3schools.com/css/css_mediatypes.asp http://www.smashingmagazine.com/2011/11/24/how-to-set-up-a-print-style-sheet/

+0

好的。在标记之前,请有礼貌地添加评论,因为此答案无用。只是标记它不会帮助。 – prashant

+0

你的回答其实很有帮助。我不是那种谁,但我没有足够的代表实际上赞扬你或其他人,所以感谢你的努力! :) – Ajay

1

window.print()函数打印整个页面。使用CSS媒体查询,您可以控制打印设备的打印/不打印。

了解更多来自这里 - http://www.joshuawinn.com/css-print-media-query/

HTML代码:

<a class="text_link">Link text not to be printed.</a> 

CSS代码:

@media print { 
.text_link{display:none} // this will hide the text link and hence will not be printed. 
}