COCO自动保存

解决因忘记保存而丢失更改的烦恼!

Versione datata 25/08/2023. Vedi la nuova versione l'ultima versione.

// ==UserScript==
// @name         COCO自动保存
// @namespace    https://shequ.codemao.cn/user/6384716
// @version      1.1
// @description  解决因忘记保存而丢失更改的烦恼!
// @author       XJ王大哥(QQ2357942846)
// @match        *://coco.codemao.cn/editor/?workId=*
// @icon         https://ocean.codemao.cn/appcraft/resource/icon/%E5%9F%BA%E7%A1%80/%E4%BF%9D%E5%AD%98.svg
// @license MIT
// @grant        GM_setValue
// @grant        GM_getValue
// ==/UserScript==

(function() {
    'use strict'
    let inquiry
    window.onload = () => {
        // 新建设置按钮
        document.querySelector("#root > div > header > div > div.Header_right__3m7KF > button.coco-button.coco-button-circle.Header_saveBtn__IhQCn").insertAdjacentHTML('afterend','<button class="coco-button   coco-button-circle Header_saveBtn__IhQCn" id="6"><span class="Header_saveText__31lXM">自动</span><span class="Header_savingIcon__30nr4"><svg class="Spinner_spinner__1Nh-g" viewBox="0 0 50 50"><circle class="Spinner_spinnerPath__2LlP3" cx="25" cy="25" r="20" fill="none" stroke-width="6" stroke="#6e4ff4"></circle></svg></span></button>')
        document.getElementById('6').addEventListener('click',() => {
            inquiry = prompt('修改自动保存间隔(s):',GM_getValue('interval') / 1000)
            if (inquiry) GM_setValue('interval', +inquiry * 1000)
        })
        // 删除提示
        document.querySelector("#root > div > div.coco-alert.coco-alert-info.CommonToast_wrapper__1vp1G.hide").remove()
        // 获取保存按钮
        const saveButton = document.querySelector("#root > div > header > div > div.Header_right__3m7KF > button:nth-child(4)")
        // 循环保存
        while(true) setTimeout(saveButton.click(), GM_getValue(inquiry))
    }
})();