ClickButton

Click on every button (or disguised button) containing the text inserted

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         ClickButton
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Click on every button (or disguised button) containing the text inserted
// @author       Leonard Okaz
// @match        http://*/*
// @match        https://*/*
// @grant        none
// ==/UserScript==

(function() {
    var button = buildButton();
    button.onclick = function() {
        var matchingText = prompt("Please enter the text", null);
        if(matchingText !== null) {
            var buttons = document.querySelectorAll("button, input[type=submit], a");
            for (var iButton = 0; iButton < buttons.length; iButton++) {
                var button = buttons[iButton];
                alert(button.type);
                if (!securedButton(button)) { alert("Security"); continue; }
                else if (button.type === "button" || (button.type === "" && button.href !== "")) {
                    if (button.innerHTML === matchingText) {
                        buttons[iButton].click();
                    }
                }
                else if (button.type === "submit") { //input[type=submit]
                    if (button.value === matchingText) {
                        buttons[iButton].click();
                    }
                }
            }
        }
    };
    document.body.insertBefore(button, document.body.firstChild);
})();

function buildButton() {
    var button = document.createElement("BUTTON");
    var buttonText = document.createTextNode("ClickButton script Tampermonkey");
    button.appendChild(buttonText);
    button.style.background = "#8A2BE2";
    button.style.color = "white";
    button.style.position = "relative";
    button.style.zIndex = "1000";
    return button;
}

// Check if the button is not hidden and clickable, otherwise it can become a source of hack
function securedButton(button) {
    if (button.style.display !==  "none") {
        return true;
    }
    if (buttons[iteratorButton].style.opacity ===  "1" || (buttons[iteratorButton].style.opacity === "" && buttons[iteratorButton].style.opacity !== "0")) {
        return true;
    }
    return false;
}