2014-01-15 45 views
3

我的頁面上有一個按鈕叫做"Print"。點擊哪個會觸發一個jQuery函數。如何使用jquery檢測瀏覽器打印(ctrl + p)

我需要當用戶點擊Alt+f+pctrl+p

我怎麼做,要調用同一個jQuery函數?

我試圖做到這一點與matchMedia,但沒有運氣

if (window.matchMedia('print').matches) { 
     alert("print using browser"); 
    } 
+0

爲什麼downvote? – poitroae

+0

該OP沒有嘗試過**任何** @aoeu ...只聽密鑰處理程序... – qwertynl

+0

你彈出一個新的窗口來打印而不是使用CSS打印介質嗎?您是否嘗試過聽按鍵?那失敗了嗎? – epascarello

回答

1

沒有這樣做,因爲據我所知的標準方法。

IE和FF提供自己的函數調用,

IE有非標準window.onBeforePrint()和window.onAfterPrint()事件偵聽器。然而,我沒有一種非IE的方式來做到這一點。

火狐 6現在支持beforeprint打印後並 https://developer.mozilla.org/en/Printing#Detecting_print_requests

一個普遍可行的解決方案可能是隻監聽CMD+P