首頁>Program>source
<html>
<head>
<script type="text/javascript">
    var URL = "http://localhost:8000/foobar/";
    var W = window.open(URL);    **Note1**
    W.window.print(); 
</script>
</head>
<p> Print ME...............</p>
</html>

我正在使用此指令碼来print網頁。 我的视圖呈現了此頁面,而JS会維護所有其他事情。

但是我不想為此打開新視窗.所以,我應该用什麼代替 window.open(URL) 如此 打開.同樣,我不想為 no new window打開新視窗 因此,每当我渲染此頁面時,它都会在同一頁面上執行所有操作.没有新視窗,没有新標簽.我该如何實現.我谷歌,但似乎没有任何工作.

print function
最新回復
  • 5月前
    1 #

    您可以使用隱藏的 iFrame執行此操作 (我以jquery為例)

    function loadOtherPage() {
        $("<iframe>")                             // create a new iframe element
            .hide()                               // make it invisible
            .attr("src", "/url/to/page/to/print") // point the iframe to the page you want to print
            .appendTo("body");                    // add iframe to the DOM to cause it to load the page
    }
    

    這將載入您要print的頁面.要进行print,您可以將javascript代碼添加到print頁面,以便在載入後將其print出来:

    $(document).ready(function () {
        window.print();
    });
    

    這將print頁面而不顯示新視窗.我已经在IE8,9和Google Chrome瀏覽器中對此进行了測試,因此我不確定這是否適用於Safari或Firefox。

  • 5月前
    2 #

    在MDN上有一个很好的示例,說明如何在隱藏狀態下執行此操作 iframe https://developer.mozilla.org/zh-CN/docs/Printing#Print_an_external_page_without_opening_it

  • 5月前
    3 #

    參考@andragon的答案.在上面更新。

    您可以使用iFrame进行此操作(未隱藏,因為隱藏的iFrame在最新版本的瀏覽器中会print空白頁。您可以在觸發print後將其隱藏)

    function loadOtherPage(link) {
            $("<iframe class='printpage'>") // create a new iframe element
                .attr("src", link) // point the iframe to the page link you want to print
                .appendTo("body");
        }
    

    這將載入您要print的頁面鏈接。 在載入print頁面鏈接時,您可以呼叫javascript。

    $(document).ready(function () {
            window.print();
        });
        window.onafterprint = function () {
            $('.printpage', window.parent.document).hide();
        }
    

    這將从同一視窗中print頁面,並且当頁面開始print或關闭print對话框時会觸發onafterprint事件

    window.parent.document 是要在父頁面上隱藏iFrame塊。

  • 5月前
    4 #

    function CallPrint() {
            var prtContent = document.getElementById('main');
            var WinPrint = window.open('', '', 'width=800,height=650,scrollbars=1,menuBar=1');
            var str =  prtContent.innerHTML;
            WinPrint.document.write(str);
            WinPrint.document.close();
            WinPrint.focus();
        }
    

    單击"print"按钮時呼叫此javascript函式。"主要"是我们必须在不打開新視窗的情况下进行print的div的ID。我想通知它將print当前頁面div。 如有任何問题,請尝試並敬重。
    谢谢
    古拉夫

  • find path of current folder:查詢当前檔案夹的路徑-cmd
  • c#:如何解決IE webBrowser控制元件中的記憶體洩漏?