用到html <object>标签,具体做法如下:

  1、在html文档任意位置添加<object>标签:

<div style="border: 1px solid #000; height:40px;width:100%" class="noprint">
     ...
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" id="wb" name="wb" width="0"></OBJECT>
...
</div>

  2、添加两个按钮:“打印”、“打印预览”,只是为了方便测试,可以添加任意个:

<a id="lkprint" onclick="printhtml();" sytle="height:20px">打印</a>
<a id="lkprintPreview" onclick="printpreview();" style="height:20px">打印预览</a>

  3、实现以上两个按钮的onclick事件:

 // 打印预览
function printpreview() {
wb.execwb(, );
}
// 打印
function printhtml() {
if (confirm('确定打印吗?')) {
wb.execwb(, );
}
}
//------------------------------------------------------------------------------------------------------------
  // execwb() 参数以及功能:
  wb.execwb(1,1)//打开
   wb.ExecWB(2,1);//关闭现在所有的IE窗口,并打开一个新窗口
   wb.ExecWB(4,1)//;保存网页
   wb.ExecWB(6,1)//打印
   wb.ExecWB(7,1)//打印预览
   wb.ExecWB(8,1)//打印页面设置
   wb.ExecWB(10,1)//查看页面属性
   wb.ExecWB(15,1)//好像是撤销,有待确认
   wb.ExecWB(17,1)//全选
   wb.ExecWB(22,1)//刷新
   wb.ExecWB(45,1)//关闭窗体无提示

  4、选择打印区域局部打印,比如我们想让“打印”和“打印预览”两个按钮不出现在被打印的区域,可以设置css属性:media=print(设置这个是为了不被打印,只负责显示),media=screen(既可以显示,也可以被打印)。

<style type="text/css" media=print>
.noprint {
display:none // 被打印时的样式
}
</style> <div style="border: 1px solid #000; height:40px;width:100%" class="noprint"> 
  <a id="lkprint" onclick="printhtml();" sytle="height:20px">打印</a>
  <a id="lkprintPreview" onclick="printpreview();" style="height:20px">打印预览</a>
</div>

注意:此方法只适用与ie浏览器(支持ie内核)

最新文章

  1. 谈谈混合 App Web 资源的打包与增量更新
  2. jquery获取父元素及祖先元素
  3. NodeJS系列~第四个小例子,NodeJs处理Get请求和Post请求
  4. MS SQL Server之光标、存储过程和触发器
  5. Go 若干技巧
  6. pentaho saiku 安装全过程
  7. VC获取并修改计算机屏幕分辨率(MFC)
  8. 动态加载故事storyboard
  9. [UOJ 25] [IOI 2014] Wall 【线段树】
  10. Android开发----权限大全
  11. SimpleDateFormat 的线程安全问题与解决方式
  12. Linux实战教学笔记09:通配符
  13. MyEclipse使用总结——修改MyEclipse默认的Servlet和jsp代码模板
  14. php银联网页支付实现方法
  15. box-sizing (摘录)
  16. Java线程池ThreadPoolExecutor原理和用法
  17. css3-study-new
  18. return ||和return &amp;&amp; 区别
  19. 【转】从零开始玩转logback
  20. oracle复习(二)

热门文章

  1. 第二章Java内存区域与内存溢出异常
  2. Unreal Engine 4 系列教程 Part 2:蓝图教程
  3. Making Dishes (P3243 [HNOI2015]菜肴制作)
  4. 利用python模拟菜刀反弹shell绕过限制
  5. (转)python中@property详解
  6. 为什么重写equals必须重写hoshCode的基础分析
  7. 百万年薪python之路 -- python的历史
  8. MongoDB实现问卷/考试设计
  9. 修改List&lt;Map&lt;String, Object&gt;&gt;的值
  10. HyperLPR车牌识别