New script kylebing.cn

1/8/2024, 12:18:59 PM

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name        New script kylebing.cn
// @namespace   Violentmonkey Scripts
// @match       https://kylebing.cn/tools/typepad/*
// @grant       none
// @version     1.0
// @author      -
// @description 1/8/2024, 12:18:59 PM
// @license MIT
// ==/UserScript==


(function() {
    'use strict';

    // 定义加载文件的函数
    function loadTextFile() {
        var fileInput = document.createElement('input');
        fileInput.type = 'file';
        fileInput.accept = 'text/plain';
        fileInput.style.display = 'none';

        fileInput.onchange = function(e) {
            var file = e.target.files[0];
            if (file) {
                var reader = new FileReader();
                var filename = e.target.files[0].name;
                console.log(filename);
                reader.onload = function(e) {
                    var editor = document.getElementById('editor');
                    if (editor) {
                        editor.value = e.target.result;
                    }
                    var titleedit = document.getElementsByClassName("editor-title")[0];
                    if (titleedit) {
                        titleedit.value = filename.split(".")[0];
                    }
                };
                reader.readAsText(file, 'UTF-8');
            }
            fileInput.remove();
        };

        document.body.appendChild(fileInput);
        fileInput.click();
    }

    // 创建按钮
    var btn = document.createElement('div');
    btn.className = 'btn';
    btn.id = "selectfile";
    btn.textContent = '加载文本文件';
    btn.addEventListener("click", function(){
      loadTextFile();
    });

    var observer = new MutationObserver(function(mutations, me) {
    var editor = document.getElementById('editor');
    if (editor) {
        var parentCont = document.getElementsByClassName("editor-toolbar")[0];
        var buttonGroup = document.createElement("div");
        buttonGroup.className = "btn-group";
        buttonGroup.appendChild(btn);
        parentCont.appendChild(buttonGroup);
        console.log("injected!!");
        me.disconnect(); // 停止观察
        return;
    }
});
    var config = { childList: true, subtree: true };
    var target = document.body;
    observer.observe(target, config);


    // TODO: 将按钮添加到页面的合适位置
    // 例如:
    // var container = document.querySelector('.your-container-selector');
    // container.appendChild(btn);
})();