您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Automatically reads Mathspace questions, answers them, and provides explanations.
// ==UserScript== // @name Math Space Helper // @namespace http://tampermonkey.net/ // @version 1.0 // @description Automatically reads Mathspace questions, answers them, and provides explanations. // @author PrimeMinisteModiji1111111111 // @match *://*.mathspace.co/* // @grant none // @run-at document-end // ==/UserScript== (function() { 'use strict'; // Utility function to get question text function getQuestionText() { // Mathspace presents questions in various formats. // Try to grab the main question text. let question = document.querySelector('.question-text, .ms-question-text, .ms-question__content'); return question ? question.innerText.trim() : null; } // Very basic math parsing: supports simple arithmetic only function solveQuestion(question) { // Remove any unnecessary characters question = question.replace(/[^\d\+\-\*\/\(\)\.\^ ]/g, ''); let answer = null, explanation = ''; try { // Replace "^" with "**" for exponentiation question = question.replace(/\^/g, '**'); // Evaluate the math expression answer = eval(question); explanation = `To solve: ${question.replace(/\*\*/g, '^')}\n` + `We simply evaluate the expression step by step.\n` + `The answer is ${answer}.`; } catch (e) { explanation = "Sorry, couldn't parse or solve this question automatically."; } return { answer, explanation }; } // Function to input the answer into Mathspace function inputAnswer(answer) { // Mathspace input fields may vary. Try common selectors. let input = document.querySelector('input.ms-input, input[type="text"], .ms-step-input input'); if (input && answer !== null) { input.value = answer; input.dispatchEvent(new Event('input', { bubbles: true })); } } // Function to show explanation on page function showExplanation(explanation) { let expDiv = document.getElementById('mathspace-helper-explanation'); if (!expDiv) { expDiv = document.createElement('div'); expDiv.id = 'mathspace-helper-explanation'; expDiv.style.position = 'fixed'; expDiv.style.bottom = '10px'; expDiv.style.right = '10px'; expDiv.style.background = '#f8f9fa'; expDiv.style.border = '2px solid #007bff'; expDiv.style.padding = '12px'; expDiv.style.zIndex = '9999'; expDiv.style.maxWidth = '350px'; expDiv.style.fontFamily = 'monospace'; document.body.appendChild(expDiv); } expDiv.innerText = explanation; } // Main function to run every few seconds function main() { let question = getQuestionText(); if (question) { let { answer, explanation } = solveQuestion(question); if (answer !== null) { inputAnswer(answer); } showExplanation(explanation); } } // Run main every 3 seconds setInterval(main, 3000); // Initial run in case content is already loaded main(); })();