1. 程式人生 > >window.open在不載入新頁面的情況下進行列印

window.open在不載入新頁面的情況下進行列印

今天在工作中遇到了這樣一個需求,頁面要求在當前進行列印輸出,入門級程式設計師,所以首先想到的就是使用window.open方法載入頁面,然後使用window.print進行列印,但使用window.open要麼開啟新視窗然後進行列印輸出,要麼更改當前頁面內容,列印輸出後再使用history.go(-1)回退到之前頁面,不滿足需求,公司前人的解決方式是隱藏中間介面,既不用回退重新整理,又不用開啟新視窗,黑科技完美解決問題,程式碼如下:

<div id="print_iframe" style="width:0px;height:0px;position:absolute;margin:0px 0px 0px 0%;display:none;z-index:-5"
>
<iframe name="print_iframe" style="width:0px;height:0%;margin-top:0px;position:relative;margin-bottom:0px;background-color:#fff;"> </iframe> </div>

在iframe裡面載入新頁面,然後隱藏掉iframe,然後用window.open在新視窗中開啟需要列印的資源

    window.open(URL,'print_iframe');
    $('#print_iframe').show();