自动点击

尝试自动点击页面上指定的元素

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name          自动点击
// @description   尝试自动点击页面上指定的元素
// @version       1.2
// @match         *://*/link?target=*
// @namespace https://greasyfork.org/users/12375
// ==/UserScript==

(function() {
    'use strict';

    // 配置区(用户需修改部分)==============================
    const CONFIG = {
        // 要点击的元素选择器(支持标准CSS选择器)
        SELECTORS: [
            '[class="link-go"]',   // 属性选择器
            '[class="btn btn-next"]',    // 类选择器
            '[id="apesar-loading"]',
            '[class="btn"]',// ID选择器
            '[class="button link-instanted"]',
            '[class="btn"]',
            '[]',
            '[]',
            '[]',
            '[]',
            '[]',
        ],

        // 检测间隔(毫秒)
        INTERVAL: 1000,

        // 最大重试次数(0为无限)
        MAX_RETRY: 0
    };

    // 核心逻辑==========================================
    let retryCount = 0;
    const clickedElements = new Set();

    function simpleClick() {
        CONFIG.SELECTORS.forEach(selector => {
            const elements = document.querySelectorAll(selector);

            elements.forEach(element => {
                if (!clickedElements.has(element)) {
                    try {
                        element.click();
                        console.log('[AutoClick] 已点击:', element);
                        clickedElements.add(element);
                    } catch (e) {
                        console.warn('[AutoClick] 点击失败:', e);
                    }
                }
            });
        });

        if (CONFIG.MAX_RETRY > 0) {
            if (++retryCount >= CONFIG.MAX_RETRY) {
                console.log('[AutoClick] 达到最大重试次数');
                clearInterval(timer);
            }
        }
    }

    // 启动定时器
    const timer = setInterval(simpleClick, CONFIG.INTERVAL);

    // 页面更新后重新检测(简单版)
    document.addEventListener('DOMContentLoaded', simpleClick);
    window.addEventListener('load', simpleClick);
})();