Greasy Fork

Greasy Fork is available in English.

美团外面自动点击售卖

自动勾选美团售卖复选框并在第三个和第四个指定输入框中输入值,每次点击和输入时延迟0.5秒,并添加按钮触发功能

目前为 2024-06-05 提交的版本,查看 最新版本

// ==UserScript==
// @name         美团外面自动点击售卖
// @namespace    http://tampermonkey.net/
// @version      1.7
// @description  自动勾选美团售卖复选框并在第三个和第四个指定输入框中输入值,每次点击和输入时延迟0.5秒,并添加按钮触发功能
// @author       Your Name
// @match        *://*.meituan.com/*
// @grant        none
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    // 创建并插入按钮
    var button = document.createElement('button');
    button.innerHTML = '自动填写和勾选';
    button.style.position = 'fixed';
    button.style.top = '10px';
    button.style.right = '10px';
    button.style.zIndex = 1000;
    document.body.appendChild(button);

    button.addEventListener('click', function() {
        // 查找包含“售卖”文本的标签
        var labels = document.querySelectorAll('label.boo-checkbox-wrapper');
        var index = 0;

        function clickNextLabel() {
            if (index < labels.length) {
                var label = labels[index];
                if (label.textContent.includes('售卖')) {
                    // 查找复选框元素
                    var checkbox = label.querySelector('input.boo-checkbox-input');

                    // 检查复选框是否存在且未被勾选
                    if (checkbox && !checkbox.checked) {
                        // 创建一个点击事件
                        var event = new MouseEvent('click', {
                            view: window,
                            bubbles: true,
                            cancelable: true
                        });
                        // 触发点击事件
                        checkbox.dispatchEvent(event);
                    }
                }
                index++;
                setTimeout(clickNextLabel, 500); // 0.5秒间隔
            } else {
                // 定位到第三个和第四个特定的输入框并输入值
                var numberInputs = document.querySelectorAll('div.boo-input-number-input-wrap > input.boo-input-number-input');
                var textInputs = document.querySelectorAll('div.boo-input-inner-wrapper > input.boo-input');

                function inputValues() {
                    if (numberInputs.length >= 2) {
                        var thirdInput = numberInputs[1]; // 获取第三个输入框
                        thirdInput.value = '1';
                        var inputEvent = new Event('input', {
                            bubbles: true,
                            cancelable: true
                        });
                        thirdInput.dispatchEvent(inputEvent);
                    }

                    if (textInputs.length >= 4) {
                        var fourthInput = textInputs[4];  // 获取第四个输入框
                        fourthInput.value = '1';
                        var inputEvent = new Event('input', {
                            bubbles: true,
                            cancelable: true
                        });
                        fourthInput.dispatchEvent(inputEvent);
                    }
                }

                setTimeout(inputValues, 500); // 0.5秒间隔
            }
        }

        clickNextLabel();
    });
})();