js如何实现局部页面打印预览功能?
首先,认识下打印原理,其实局部打印页面很简单。就是把需要打印的部分做一个起始标记,至于标记如何写,随便你写什么。
这里就写 <!--startprint--> 需要打印的内容
<!--endprint-->. 因为标记是不需要让用户看见的所以加了注释!
完整代码:
<!DOCTYPE html>
<html>
<head>
<title>打印预览简单实现_www.jb200.com</title>
</head>
<body>
<div>
这是body 里的内容不需要打印,具体的页面设计根据自己的要求自行设计。如果需要一个页面多个tag,可以动态生成tag
(脚本学堂 www.jb200.com 收集整理)
</div>
<!--startprint-->
<div>
这是我需要打印的内容
</div>
<!--endprint-->
<script type="text/javascript">
function preview()
{
var bdhtml=window.document.body.innerHTML;//获取当前页的html代码
var startStr="<!--startprint-->";//设置打印开始区域
var endStr="<!--endprint-->";//设置打印结束区域
var printHtml=bdhtml.substring(bdhtml.indexOf(startStr)+startStr.length,bdhtml.indexOf(endStr));//从标记里获取需要打印的页面
window.document.body.innerHTML=printHtml;//需要打印的页面
window.print();
window.document.body.innerHTML=bdhtml;//还原界面
}
preview();
</script>
</body>
</html>