Jinxin Util Download

文件下载工具类

目前為 2024-02-10 提交的版本,檢視 最新版本

此腳本不應該直接安裝,它是一個供其他腳本使用的函式庫。欲使用本函式庫,請在腳本 metadata 寫上: // @require https://update.cn-greasyfork.org/scripts/460643/1325608/Jinxin%20Util%20Download.js

// ==UserScript==
// @name         Jinxin Util Download
// @namespace    https://gitee.com/jinxin11112/tampermonkey
// @version      0.1.0
// @description  文件下载工具类
// @author       jinxin
// @icon         <$ICON$>
// @grant        none
// @license MIT
// ==/UserScript==

function downloadFile(fileContent, title) {
    fileContent.replace(/^\s*\n\s*\n/g, '\n')
    const blob = new Blob(fileContent, {type: "text/plain;charset=utf-8"});
    // 创建新的URL并指向File对象或者Blob对象的地址
    const blobURL = window.URL.createObjectURL(blob)
    // 创建a标签,用于跳转至下载链接
    const tempLink = document.createElement('a')
    tempLink.style.display = 'none'
    tempLink.href = blobURL
    if (!title) title = Date.now();
    tempLink.download = decodeURI(title + '.txt')
    // 兼容:某些浏览器不支持HTML5的download属性
    if (typeof tempLink.download === 'undefined') {
        tempLink.setAttribute('target', '_blank')
    }
    // 挂载a标签
    document.body.appendChild(tempLink)
    tempLink.click()
    document.body.removeChild(tempLink)
    // 释放blob URL地址
    window.URL.revokeObjectURL(blobURL)
}