flomo清空笔记助手

帮你一键清空flomo笔记

2024-10-09 기준 버전입니다. 최신 버전을 확인하세요.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         flomo清空笔记助手
// @namespace    http://tampermonkey.net/ 
// @version      0.1
// @description  帮你一键清空flomo笔记
// @author       xbp
// @match        https://v.flomoapp.com/mine 
// @icon         https://v.flomoapp.com/favicon.ico 
// @grant        GM_addStyle
// @grant        GM_getResourceText
// @resource     FontAwesomeCSS https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css
// ==/UserScript==

(function() {
    'use strict';

    // 确保页面加载完成后再注入样式
    window.addEventListener('load', function() {
        // 获取 Font Awesome 的样式文本
        var cssText = GM_getResourceText('FontAwesomeCSS');
        if (cssText) {
            // 添加 Font Awesome 的样式
            GM_addStyle(cssText);
        } else {
            console.error('Failed to load Font Awesome CSS.');
        }
    });

    // 创建按钮
    const button = document.createElement('button');
    button.innerHTML = '<i class="fa-solid fa-trash-can"></i> 清空笔记';
    button.style.position = 'fixed';
    button.style.bottom = '10px';
    button.style.left = '10px';
    button.style.zIndex = '9999';
    button.style.cursor = 'pointer';
    button.style.border = 'none';
    button.style.backgroundColor = 'transparent';
    button.style.padding = '10px';
    button.style.fontSize = '16px';
    button.style.color = 'red';
    button.title = '清空笔记';

    // 点击按钮执行操作
    button.onclick = function() {
        if (confirm('确定要清空笔记吗?')) {
            scrollAndCheck();
        }
    };

    // 将按钮添加到页面
    document.body.appendChild(button);

    // 你的原有脚本逻辑
    const scrollToBottom = (c) => {
        const element = document.querySelector(c);
        if (element) {
            element.scrollTop = element.scrollHeight;
        }
    };

    const isScrolledToBottom = () => {
        const element = document.querySelector('.end');
        return element ? element.getBoundingClientRect().bottom <= window.innerHeight : false;
    };

    function scrollAndCheck() {
        scrollToBottom('.memos');

        if (!isScrolledToBottom()) {
            console.log('No element with class "end" was found, continue scrolling...');
            setTimeout(scrollAndCheck, 1000); // 每秒检查一次
        } else {
            console.log('页面已下滑到最底部!');
            var elements = document.querySelectorAll('.item.danger');

            for (var i = 0; i < elements.length; i++) {
                if (elements[i].textContent.includes('删除')) {
                    elements[i].click();
                }
            }
        }
    }
})();