簡體   English   中英

您可以在 Javascript 中訪問瀏覽器的另存為功能嗎?

[英]Can you access a Browser's Save As Functionality in Javascript?

我正在創建一個網頁,用戶應該可以輕松下載該網頁。

理想情況下,我希望頁面底部有一個按鈕,用於激活瀏覽器save as function。我想這樣做是因為不是每個人都知道如何保存 web 頁面。

是否可以通過 Javascript 中的按鈕激活瀏覽器的save as功能?

我認為單擊按鈕不可能觸發瀏覽器的“另存為”對話框。

但是,可以使用a標簽的download屬性觸發當前頁面的下載。

示例代碼:

function triggerDownload(url, fileName) {
  const link = document.createElement('a');
  link.href = url;
  link.download = fileName;
  link.click();
}

// call the above method to trigger download
triggerDownload('https://<current-page-url>', 'page.html');

上面代碼的警告是它只下載 HTML 而不是隨附的 CSS/JS。 因此,為了緩解這種情況,最好觸發window.print()以允許用戶將整個頁面下載為 PDF:

function triggerDownload() {
  window.print();
}

您還可以使用一些庫來進行 PDF 轉換(例如jsPDF ),而無需使用打印對話框。

暫無
暫無

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

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