JS实现浏览器打印、打印预览⽰例
⽬前正在做浏览器端采⽤JS⽅式实现打印这么⼀个功能,JS打印实现的⽅法很多,但是兼容各个浏览器实现打印预览的功能有些棘⼿,现将实
现的内容及遇到的问题记录下来,希望有⼤⽜看到所提的问题后可以给予解答,在此感谢啦。
1.JS实现打印的⽅式
⽅式⼀:window.print()
window.print();会弹出打印对话框,打印的是window.document.body.innerHTML中的内容,下⾯是从⽹上摘到的⼀个局部打印的例⼦,该例⼦
的不⾜是打印会修改页⾯的内容。
局部打印案例
1不需要打印的地⽅
2这⾥不要打印啊
打印内容~~
打印
不打印的地⽅啊哈哈哈哈
2
⽅式⼆:使⽤html 标签引⼊Webbrowser控件
这种⽅式是其只兼容IE,其他浏览器不可使⽤,同时IE10以下的浏览器才可以使⽤,调⽤⽅式如下:
这种⽅式优势是在IE下可以弹出打印预览,这是打印很⼈性化的功能,但是遗憾的是⾼版本的IE浏览器不⽀持WebBrowser了
⽅式三:采⽤document.execCommand(”print”)
该⽅式也兼容各个版本的浏览器,同window.print()⼀样,其启动的是打印对话框,chrome的打印对话框⾃带预览功能,但是IE、⽕狐仅仅只弹
出打印设置对话框,没有预览功能。
⽅式四:采⽤JQuery插件
使⽤jQuery浏览插件可以很⽅便的进⾏局部打印,常⽤的插件有:
这两种⽅式使⽤都很简单,1)通过$("#id").print(/*options*/);调⽤;2)通过$('#id').printArea(/*options*/); 其中的option可选项可以在下载地址下
载下来后看⽰例代码,⼀般options不⽤传即可,⽰例代码如下:
JQuery打印
function printit(){
$("#ganburenmianbaio").print({iframe:true,prepend:''});