簡體   English   中英

確定瀏覽器是否支持打印

[英]Determine whether browser supports printing

我認為答案幾乎肯定是“不”,因為我做了一些測試和搜索,但有沒有任何技巧來檢測window.print()是否可以在頁面內部工作(即從JavaScript )? 我知道,即使在桌面/筆記本電腦上,也不可能知道系統上是否配置了打印機,但至少瀏覽器會打開一個打印對話框。

我的Android手機有一個window.print()函數,但它(不出所料)沒有做任何事情。

我再一次問,所以在SO上有一個關於這個主題的好問題:-)

不幸的是,它看起來像是不。 window.print()函數不是EMCAScript規范的一部分。 這意味着它不需要成為JavaScript語言的一部分,也沒有適當的文檔來實現它。 這是未定義的行為,因此測試它看起來非常困難。

資料來源:

編輯:

我寫的可愛的小腳本來測試我的瀏覽器,只是檢查打印功能是否存在然后要求打印:

if(window.print) {
    if(confirm('I can print. Would you like to?'))
        window.print()
}

print()方法是同步的。 這使得可以進行后果以確定是否已經顯示打印對話框

var start = +new Date();
window.print();
var delta = + new Date() - start;
console.log(delta);
if (delta > 100) { console.log('It worked'); }

beforeprint和afterprint事件可能有所幫助,但我不確定瀏覽器支持。

編輯:Webkit 不支持它們

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM