2015-10-18 91 views
1

我發現這個選擇:有沒有辦法直接從Chrome打印?

document.querySelector('#print-header > div > button.print.default').click(); 

是否有此選擇直接從Chrome瀏覽器打印的方法?

我也試過超時,但沒有工作。

+0

看來,「直接」,你的意思是沒有確認。 –

+0

是的。我嘗試使用--kiosk打印模式,但不起作用 –

+2

這只是一個按鈕的選擇器。您沒有向我們展示是否有任何事件偵聽器(用於單擊,即)綁定到將觸發打印的元素。否則,你可以簡單地使用'window.print()'。 – Terry

回答

1

不能打印沒有用戶確認。 這是一個安全的事情,你不允許從瀏覽器控制用戶PC。

當你在chrome中打開打印對話框時,它就像一個新的Tab,你在那裏沒有控制。

0

(此解決方法需要用戶的確認)

使用window.print();功能或看到這樣的回答:Bill Paetzke's answser of Print the contents of a DIV

function PrintElem(elem) 
{ 
    Popup($(elem).html()); 
} 

function Popup(data) 
{ 
    var mywindow = window.open('', 'my div', 'height=400,width=600'); 
    mywindow.document.write('<html><head><title>my div</title>'); 
    /*optional stylesheet*/ //mywindow.document.write('<link rel="stylesheet" href="main.css" type="text/css" />'); 
    mywindow.document.write('</head><body >'); 
    mywindow.document.write(data); 
    mywindow.document.write('</body></html>'); 

    mywindow.document.close(); // necessary for IE >= 10 
    mywindow.focus(); // necessary for IE >= 10 

    mywindow.print(); 
    mywindow.close(); 

    return true; 
} 
相關問題