您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
try to take over the world!
// ==UserScript== // @name Zetamac // @namespace http://tampermonkey.net/ // @version 0.2 // @description try to take over the world! // @author You // @match https://arithmetic.zetamac.com/game* // @grant none // @require http://code.jquery.com/jquery-3.4.1.min.js // ==/UserScript== var input = document.getElementsByClassName("answer")[0]; var character = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()`~-_=+[{]} \\ |;: \' \" ,<.>/?", number = "0123456789"; function isNumber(num) { for(let j = 0; j < 10; j++) { if(num == number.charAt(j)) return true; } return false; } function isChar(char) { for(var i = 0; i < character.length; i++) { if(char === character[i]) return true; } return false; } function parse() { var problem = document.getElementsByClassName("problem")[0].innerHTML; var n = 0, m = 0, ans, operator, reached = false; for(let i = 0; i < problem.length; i++) { var char = problem.charAt(i); switch(char) { case '+': operator = '+'; reached = true; break; case '–': operator = '–'; reached = true; break; case '×': operator = '×'; reached = true; break; case '÷': operator = '÷' reached = true; } if(!isNumber(char)) continue; if(reached) m = 10 * m + (char - '0'); else n = 10 * n + (char - '0'); } switch(operator) { case '+': ans = n + m; break; case '–': ans = n - m; break; case '×': ans = n * m; break; case '÷': ans = n / m; } return ans.toString(); } function checkDelete(key) { if(key === "Backspace" || key == "Delete") { if(input.value[input.value.length - 1] === undefined) return true; if(input.value.length != 0) input.value = input.value.slice(0, -1); return false; } } const sleepNow = (delay) => new Promise((resolve) => setTimeout(resolve, delay)) async function display(ans) { for (let i = 0; i < ans.length; i++) { await sleepNow(75); input.value += String(ans.charAt(i)); } } (function() { input.addEventListener("keydown", function(e) { e.preventDefault(); const key = e.key; if(checkDelete(key) || !isChar(key)) return; var ans = parse(); input.value = ans; // display(ans) } ); })();