用到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内核)

js调用浏览器“打印”与“打印预览”的更多相关文章

  1. Lodop中特殊符号¥打印设计和预览不同

    Lodop中¥符号样式改变问题 Lodop中对超文本样式的解析,虽然说是按照调用的本机ie引擎,但是调用的ie版本可能不同,导致在ie下是一种样式,预览又是另一种样式.可能是有些样式没有具体设置,走的 ...

  2. js矩阵菜单或3D立体预览图片效果

    js矩阵菜单或3D立体预览图片效果 下载地址: http://files.cnblogs.com/elves/js%E7%9F%A9%E9%98%B5%E8%8F%9C%E5%8D%95%E6%88% ...

  3. 用pdf.js实现在移动端在线预览pdf文件

    用pdf.js实现在移动端在线预览pdf文件1.下载pdf.js    官网地址:https://mozilla.github.io/pdf.js/ 2.配置    下载下来的文件包,就是一个demo ...

  4. atitit.javascript js 上传文件的本地预览

    atitit.javascript js 上传文件的本地预览 1. .URL.createObjectURL  1 1.1. 吊销所有使用 URL.createObjectURL 而创建的 URL,以 ...

  5. 使用jqPrint.js调用浏览器打印界面,打印网页中的某一部分该部分含有ECharts图表

    1.准备好js文件(我用的是谷歌浏览器) 这个文件是为了防止你的jQuery版本过高而不适配的问题 这是调用浏览器打印的js插件 2.引入js文件 <script src="js/jq ...

  6. JS Web打印,实现预览新样式

    问题描述:     JS实现Web打印,要求打印前一种样式,打印预览时新样式 问题解决:         (1)设置打印时的css样式,设置打印前的css样式 注:         以上为print. ...

  7. asp.net调用Lodop实现页面打印或局部打印,可进行打印设置或预览

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="WebPrint.aspx.cs ...

  8. js调用浏览器打印

    <input type="button" id="print" onclick="printdiv('list');" value=& ...

  9. js 调用IE内置打印控件

    转自学网(http://www.xue5.com/itedu/200802/102909.html) WebBrowser是IE内置的浏览器控件,无需用户下载. 一.WebBrowser控件 < ...

随机推荐

  1. MySQL学习(四)深入理解乐观锁与悲观锁

    转载自:http://www.hollischuang.com/archives/934 在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据 ...

  2. css 文字间距

    letter-spacing :  字与字之间的距离 text-indent : 行的抬头间距 line-height : 行高度

  3. JS中的事件委托/事件代理详解

    起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...

  4. [Luogu2879][USACO07JAN]区间统计Tallest Cow

    题目描述 FJ's N (1 ≤ N ≤ 10,000) cows conveniently indexed 1..N are standing in a line. Each cow has a p ...

  5. GDAL集成对KML文件的支持

    目录 1. 正文 1.1. 编译LibKML 1.1.1. 第三方库支持 1.1.2. 编译错误 1.2. 配置GDAL 1.3. 链接问题 2. 参考 1. 正文 GDAL可以支持将KML作为矢量文 ...

  6. sqlserver 查看最耗时的前10个存储过程

    SELECT TOP OBJECT_NAME(a.object_id,database_id) SP_Name, DB_NAME(a.database_id) Database_Name, a.cac ...

  7. i春秋DMZ大型靶场实验(一)内网拓展

    更具提示 先下载工具包 ip  172.16.12.226  打开bp 进行代理发现 整个页面 没有请求 没有其页面通过 御剑,dir ,hscan   进行目录爆破未发现有用信息    对当前页面进 ...

  8. Spring Cloud Alibaba (nacos 注册中心搭建)

    [nacos下载地址](https://github.com/alibaba/nacos/releases) ### 什么是 Nacos? - nacos主要起到俩个作用一个是注册中心,另外一个是配置 ...

  9. 玩转OneNET物联网平台之MQTT服务③ —— 远程控制LED(设备自注册)

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  10. Shiro learning - 入门学习 Shiro中的基础知识(1)

    Shiro入门学习 一 .什么是Shiro? 看一下官网对于 what is Shiro ? 的解释 Apache Shiro (pronounced “shee-roh”, the Japanese ...