指定window.print 打印区域

来源:互联网 发布:java怎么取绝对值 编辑:程序博客网 时间:2024/05/03 02:35

第一种方法:指定不打印区域
使用CSS,定义一个.noprint的class,将不打印的内容放入这个class内。
细如下:

?
1
2
3
<style media=printtype="text/css">
.noprint{visibility:hidden}
</style>

要打印的内容。哈哈!

?
1
2
<pclass="noprint">将不打印的代码放在这里。</p>
<ahref="javascript:window.print()"rel="external nofollow" target="_self">打印</a>

第二种方法:指定打印区域
把要打印的内容放入一个 span或div,然后通过一个函数打印。

?
1
2
3
4
5
6
7
8
9
10
<span id='div1'>把要打印的内容放这里</span>
<p>所有内容</p>
<div id="div2">div2的内容</div>
<a href="javascript:printme()"rel="external nofollow" target="_self">打印</a>
<script language="javascript">
functionprintme()
{ document.body.innerHTML=document.getElementByIdx_x_x('div1').innerHTML+'<br/>'+document.getElementByIdx_x_x('div2').innerHTML;
window.print();
}
</script>

如果要打印的只是整个页面中的一小部分,就最好采用第二种方法。

第三种方法:如果要打印的页面排版和原web页面相差很大,采用此种方法。点打印按钮弹出新窗口,把需要打印的内容显示到新窗口中,在新窗口中调用window.print()方法,然后自动关闭新窗口。
window.print可以打印网页,但有时候我们只希望打印特定控件或内容,怎么办呢?

首先我们可以把要打印的内容放在div中,然后用下面的代码进行打印。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
<scriptlanguage="javascript">
function printdiv(printpage)
{
var headstr = "<html><head><title></title></head><body>";
var footstr = "</body>";
var newstr = document.all.item(printpage).innerHTML;
var oldstr = document.body.innerHTML;
document.body.innerHTML = headstr+newstr+footstr;
window.print();
document.body.innerHTML = oldstr;
return false;
}
</script>
<title>div print</title>
</head>
 
<body>
//HTML Page
//Other content you wouldn't like to print
<inputname="b_print"type="button"class="ipt"onClick="printdiv('div_print');"value=" Print ">
 
<divid="div_print">
 
<h1style="Color:Red">The Div content which you want to print</h1>
 
</div>
//Other content you wouldn't like to print
//Other content you wouldn't like to print
</body>
</html>
0 0
原创粉丝点击