js调用浏览器打印模块实现点击按钮触发自定义函数

本文主要内容:

如果用浏览器自带的打印按钮,无法进行其余和打印相关的操作,如传递打印次数等等。所以需要把浏览器打印的功能保留并赋予到自己添加的按钮当中,可以在点击按钮的同时触发自定义的函数。


代码如下:

<input type="button" class="btnPrint" id="btnPrint" value="打印" />
<iframe frameborder=0 width="100%" height="400px" id="printPDFIframe" src=""<span style="white-space:pre"> </span>></iframe>

代码如下:

<script type="text/javascript">
$("#btnPrint").click(function(){
<pre code_snippet_id="248441" snippet_file_name="blog_20140321_2_4849863" name="code" class="javascript"><span style="white-space:pre"> </span>printPDF();</pre> }); function printPDF(){ if (navigator.appName == 'Microsoft Internet Explorer'){ //Wait until PDF is ready to print if(typeof document.getElementById("printPDFIframe").print == 'undefined'){ setTimeout(function(){printPDF("printPDFIframe");},
1000); }else{ var x = document.getElementById("printPDFIframe"); x.print(); } }else{ PDFIframeLoad(); // for chrome } } //for Chrome 有取消/确认, 无法直接发送到打印机 function PDFIframeLoad() { debugger; var iframe = document.getElementById("printPDFIframe"); if(iframe.src)
{ var frm = iframe.contentWindow; frm.focus();// focus on contentWindow is needed on some ie versions frm.print(); return false; } }</script>
<pre></pre>
<pre></pre>

(0)

相关推荐

  • JavaScript调用浏览器打印功能实例分析

    本文实例讲述了JavaScript调用浏览器打印功能的方法.分享给大家供大家参考.具体如下: 1. 通用型,支持IE,Firefox,Chrome... 复制代码 代码如下: window.print(); 2. 只支持IE打印: <script> var print=function(){ /** * WebBrowser.ExecWB(1,1) 打开 * Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口 * Web.ExecWB(4,1) 保存网页 * Web.Ex

  • IE浏览器打印的页眉页脚设置解决方法

    首先说明问题:默认情况下,通过IE的打印对话框,打印出来的内容都有页眉和页脚的. 查看ie的页面设置发现如右图中,页眉页脚.下面先说明&w&bPage&p of &P , &u&b&d的含义 &w - 窗口标题 &u - 页面地址 &d - 短日期格式,如10/12/2006 &D - 长日期格式,如Tursday, October 12, 2006 &t - 12小时制时间 &T - 24小时制时间

  • JS 打印界面的CSS居中代码适用所有浏览器

    复制代码 代码如下: function preview(oper) { if (oper < 10) { bdhtml = window.document.body.innerHTML;//获取当前页的html代码 sprnstr = "<!--startprint" + oper + "-->";//设置打印开始区域 eprnstr = "<!--endprint" + oper + "-->"

  • ie浏览器使用js导出网页到excel并打印

    在一些要求不是很高的小项目中,可以使用一些虽不是通用且不是新技术但是确实可以很好实现功能的技术来实现这些功能.这样系统不是显示的很复杂,且可以方便维护. 新建一个exportPrint.html页面,里面的代码如下所示,就可以实现导出到Excel和打印网页. 复制代码 代码如下: <html> <head>  <title>IE浏览器使用JS技术导出到Excel和打印</title>  <style>   .table_stat {    bor

  • js实现浏览器的各种菜单命令比如打印、查看源文件等等

    复制代码 代码如下: input type="button" onclick="document.execCommand('open')" value=打开 input type="button" onclick="document.execCommand('saveas')" value=保存 input type="button" onclick="document.execCommand('

  • 一种基于浏览器的自动小票机打印实现方案(js版)

    1.使用场景 用户在浏览器做了某项操作后,自动打印小票. 2.测试方式 2.1 JavaScript实现 尝试了很多办法,最终都会出现一个弹出框,让用户选择打印机.不符合我们需求. 2.2 lodop 功能比较强大,但是收费的.暂不考虑. 2.3 PAZU 功能也很强大,免费许可.非常赞! 详情:http://www.4fang.net/article/tech/pazu_tprinter.html 实现过程: 2.3.1 打印详情页面 <!doctype html> <html>

  • js调用浏览器打印模块实现点击按钮触发自定义函数

    本文主要内容: 如果用浏览器自带的打印按钮,无法进行其余和打印相关的操作,如传递打印次数等等.所以需要把浏览器打印的功能保留并赋予到自己添加的按钮当中,可以在点击按钮的同时触发自定义的函数. 复制代码 代码如下: <input type="button" class="btnPrint" id="btnPrint" value="打印" /> <iframe frameborder=0 width="

  • js实现浏览器打印功能的示例代码

    最近接触到一个新需求,实现打印机打印小票的功能.打的一桌子小票(惭愧),不过也基本满足了业务上的需求,现在分享一下如何实现(好记性不如烂笔头) 先上代码 // 布局代码 <div id="print">     <div id="print_content"></div> </div> //js 部分代码var f = document.getElementById('printf'); if (f) { docume

  • Python的Tkinter点击按钮触发事件的例子

    如果要开发一个比较大的程序,那么应该先把代码封装起来,在面向对象编程中,就是封装成类 先看代码: import tkinter as tk class App: def __init__(self, root): root.title("打招呼测试") frame = tk.Frame(root) frame.pack() self.hi_there = tk.Button(frame, text="打招呼", fg="blue", comman

  • 详解vue中在父组件点击按钮触发子组件的事件

    我把这个实例分为几个步骤解读: 1.父组件的button元素绑定click事件,该事件指向notify方法 2.给子组件注册一个ref="child" 3.父组件的notify的方法在处理时,使用了$refs.child把事件传递给子组件的parentMsg方法,同时携带着父组件中的参数msg  4.子组件接收到父组件的事件后,调用了parentMsg方法,把接收到的msg放到message数组中 父组件 <template> <div id="app&qu

  • JS实现浏览器打印、打印预览示例

    目前正在做浏览器端采用JS方式实现打印这么一个功能,JS打印实现的方法很多,但是兼容各个浏览器实现打印预览的功能有些棘手,现将实现的内容及遇到的问题记录下来,希望有大牛看到所提的问题后可以给予解答,在此感谢啦. 1.JS实现打印的方式 方式一:window.print() window.print();会弹出打印对话框,打印的是window.document.body.innerHTML中的内容,下面是从网上摘到的一个局部打印的例子,该例子的不足是打印会修改页面的内容. <!DOCTYPE ht

  • js调用打印机打印网页字体总是缩小一号的解决方法

    今天要做一个打印网页的小功能,直接调用window.print(),但是打印出来后,字体总是缩小一号,找不到原因... 后来尝试用一个IE的打印控件,但仅支持ie有点恶心,只能返回去继续找原因 原来,我要打印的页面因为是哥弹出层,所以出现这种现象,后来直接target="_blank",就可以正常打印了. 另外, 复制代码 代码如下: function preview() { bdhtml=window.document.body.innerHTML; sprnstr="&l

  • JS脚本实现网页自动秒杀点击

    我们先来看下秒杀活动页面代码 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title> Micomo </title> </head> <body> <div> <p> 活动倒计时<str

  • React如何实现浏览器打印部分内容详析

    前言 近期着手项目任务的打印功能,在此作个记录,本文介绍基于React的一种调用浏览器打印页面指定内容的方法. 整体思路: 通过构建一个隐藏的元素(该元素包裹需打印的内容),当打印行为触发时,将页面其他的一些不需要打印的元素隐藏,然后将需打印的元素追加到body中,打印完成后,再恢复初始状态即可.浏览器打印的本质还是将web页面中的元素打印出来而已. 1. 构建待打印元素 在页面中构建一个display为none的元素,里面的内容为你需要打印的内容.我们还需要设置包裹打印内容的元素的ref属性,

  • 使用c++调用windows打印api进行打印的示例代码

    前言 在近期开发的收银台项目中,需要使用打印机进行小票打印,打印流程的时序图如下所示: 在客户的使用过程中,遇到一个问题,如果机器安装了打印机驱动,那么调用厂商提供的 sdk 进行打印的话,会导致出现小票只打印一半的情况,对此,需要绕过厂商 sdk 使用系统的打印才能够解决这一问题. 在 web 端打印中,需要调用浏览器打印 api 进行网页打印.这意味着,之前后端编写的esc/pos无法复用到,同时,前端还得花费精力来编写 html 以及css 来完成打印内容的排版,这无疑增加了复杂度以及工作

随机推荐