Mathspace Auto Solver & Repeater

Extracts, repeats, and solves Mathspace questions

当前为 2025-02-13 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         Mathspace Auto Solver & Repeater
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Extracts, repeats, and solves Mathspace questions
// @author       You
// @match        *://*.mathspace.co/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    function getQuestionText() {
        // Try to find the question text inside Mathspace
        let questionElement = document.querySelector('.css-1cs14ul'); // Adjust this if needed
        if (questionElement) {
            return questionElement.innerText.trim();
        }
        return null;
    }

    function solveMathQuestion(question) {
        try {
            // Replace math symbols (× to *, ÷ to /) to make it JS-friendly
            let formattedQuestion = question.replace(/×/g, '*').replace(/÷/g, '/');

            // Use JavaScript's eval() to calculate the answer
            let answer = eval(formattedQuestion);
            return answer;
        } catch (error) {
            console.error("Error calculating the answer:", error);
            return "Error";
        }
    }

    function repeatQuestionInInput(question) {
        // Find the answer input field
        let inputField = document.querySelector('input'); // Adjust selector if needed
        if (inputField) {
            inputField.value = question; // Insert the question for repetition
            inputField.dispatchEvent(new Event('input', { bubbles: true })); // Simulate input event
        } else {
            console.log("Input field not found.");
        }
    }

    function displayAnswer() {
        let questionText = getQuestionText();

        if (questionText) {
            repeatQuestionInInput(questionText); // Repeat the question in input
            let answer = solveMathQuestion(questionText);
            alert("Correct Answer: " + answer); // Show answer in alert
            console.log("Correct Answer:", answer);
        } else {
            console.log("Could not find the question.");
        }
    }

    // Run the script after a delay to ensure content is loaded
    setTimeout(displayAnswer, 3000);
})();