js调用iframe实现打印页面内容的方法


Posted in Javascript onMarch 04, 2014

1、程序说明

1) 此程序可以实现选择页面中的区域进行打印,以iframe方式进行打印;
2) 与原生态的print() 区别在于,取消打印页面后可以完整保留当前访问页面的内容。

2、代码部分

1) JS 函数:

function do_print(id_str)//id-str 打印区域的id
{
var el = document.getElementById(id_str);
var iframe = document.createElement('IFRAME');
var doc = null;
iframe.setAttribute('style', 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;');
document.body.appendChild(iframe);
doc = iframe.contentWindow.document;
// 引入打印的专有CSS样式,www.111Cn.net根据实际修改
doc.write("<LINK rel="stylesheet" type="text/css" href="css/print.css">");
doc.write('<div>' + el.innerHTML + '</div>');
doc.close();
iframe.contentWindow.focus();
iframe.contentWindow.print();
if (navigator.userAgent.indexOf("MSIE") > 0)
{
     document.body.removeChild(iframe);
}
}

2) HTML:

// 打印区域:
<div id="print_box">
......
</div>
// 调用打印
<button onclick="javascript:do_print('print_box');">打印</button>

3. 测试

点击页面上的打印按钮,即可测试打印;

除了上面方法我们还可以通过jquery来实例,代码如下

<script type="text/javascript" src="jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="jquery.PrintArea.js"></script> 
<script>
$(document).ready(function(){
  $("input#biuuu_button").click(function(){
  $("div#myPrintArea").printArea();
});
});
</script>
<input id="biuuu_button" type="button" value="打印"></input>
<div id="myPrintArea">.....文本打印部分.....</div>

如果要实现区域打印我们可尝试下面方法

下面本文分享一种超简单的方法实现页面的打印功能,不仅可以打印整个页面,还可以打印页面某块区域

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="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>
<input type="button" onClick="printdiv('div_print');" value=" 打印 ">
<div id="div_print">
<h1 style="Color:Red">被打印区域:3water.com</h1>
</div>
这块区域是打印不到的!
</body>
</html>
Javascript 相关文章推荐
js 页面传参数时 参数值含特殊字符的问题
Dec 13 Javascript
20行代码实现的一个CSS覆盖率测试脚本
Jul 07 Javascript
浅谈JSON.parse()和JSON.stringify()
Jul 14 Javascript
JavaScript的Backbone.js框架的一些使用建议整理
Feb 14 Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
Jun 20 Javascript
简单理解vue中实例属性vm.$els
Dec 01 Javascript
smartupload实现文件上传时获取表单数据(推荐)
Dec 12 Javascript
JavaScript中数组Array方法详解
Feb 27 Javascript
jQuery给表格添加分页效果
Mar 02 Javascript
浅谈在Vue-cli里基于axios封装复用请求
Nov 06 Javascript
微信小程序实现倒计时补零功能
Jul 09 Javascript
js实现页面多个日期时间倒计时效果
Jun 20 Javascript
JavaScript的21条基本知识点
Mar 04 #Javascript
js的2种继承方式详解
Mar 04 #Javascript
Seajs的学习笔记
Mar 04 #Javascript
文本域中换行符的替换示例
Mar 04 #Javascript
为jquery的ajaxfileupload增加附加参数的方法
Mar 04 #Javascript
Document.location.href和.replace的区别示例介绍
Mar 04 #Javascript
LABjs、RequireJS、SeaJS的区别
Mar 04 #Javascript
You might like
PHP实现图片压缩的两则实例
2014/07/19 PHP
Add a Table to a Word Document
2007/06/15 Javascript
javascript EXCEL 操作类代码
2009/07/30 Javascript
javascript 面向对象编程基础:封装
2009/08/21 Javascript
JS鼠标事件大全 推荐收藏
2011/11/01 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
用js代码和插件实现wordpress雪花飘落效果的四种方法
2014/12/15 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
js 获取图像缩放后的实际宽高,位置等信息
2017/03/07 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
JS实现的走迷宫小游戏完整实例
2017/07/19 Javascript
JavaScript表单即时验证 验证不成功不能提交
2017/08/31 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
2018/04/17 Javascript
JavaScript根据json生成html表格的示例代码
2018/10/24 Javascript
JS字典Dictionary类定义与用法示例
2019/02/01 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
2019/09/26 Javascript
vue+element表格导出为Excel文件
2019/09/26 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
vue实现带过渡效果的下拉菜单功能
2020/02/19 Javascript
python 3.5实现检测路由器流量并写入txt的方法实例
2017/12/17 Python
浅谈python中拼接路径os.path.join斜杠的问题
2018/10/23 Python
python集合的创建、添加及删除操作示例
2019/10/08 Python
Python按照list dict key进行排序过程解析
2020/04/04 Python
土耳其家居建材网站:Koçtaş
2016/11/22 全球购物
SK-II神仙水美国官网:SK-II美国
2020/02/25 全球购物
电子商务应届生求职信
2013/11/16 职场文书
客户接待方案
2014/02/26 职场文书
课前一分钟演讲稿
2014/08/26 职场文书
2014年审计工作总结
2014/11/17 职场文书
小学语文教师年度考核个人总结
2015/02/05 职场文书
财务部岗位职责范本
2015/04/14 职场文书
焦裕禄观后感
2015/06/03 职场文书
2016年“我们的节日·端午节”活动总结
2016/04/01 职场文书