JS调用浏览器不能全屏适应A4纸解决办法

本文介绍了如何使用JS结合JQ解决浏览器打印时页面无法全屏适应A4纸的问题。通过引入jQuery库,提供了一个打印方法,并且针对打印后页面重载导致原有功能失效的问题,提出了监听打印回调并重新刷新页面的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引入JQ:<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>

打印方法:

// 打印
function preview(){
    bdhtml=window.document.body.innerHTML;//获取当前页的html代码
    sprnstr="<!--startprint-->";//设置打印开始区域
    eprnstr="<!--endprint-->";//设置打印结束区域
    prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html
    prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
    window.document.body.innerHTML=prnhtml;
    window.print();
    window.document.body.innerHTML=bdhtml;
}

html部分:

<button class="btn-online-printing" onclick="preview()">在线打印</button>

<!--startprint-->  打印开始位置
    <div class="">
        这里是打印的内容
    </div>
    
<!--endprint-->    打印结束位置

提示:这个打印会出现重载页面的现象,页面上原有的功能在重载页面后会失效,

解决办法:监听打印回调然后重新刷新页面

代码如下:

// 浏览器打印回调
var beforePrint = function() {
    location.reload()
				
		        
};
// 浏览器打印回调
var afterPrint = function() {
    location.reload()		    	
		       
};

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值