ClickButton

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

// ==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;
}
长期地址
遇到问题?请前往 GitHub 提 Issues。