您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
6/12/2024, 6:06:28 PM
// ==UserScript== // @name JPDB Show Pitch In Review Question // @namespace JPDB_Show_Pitch_In_Review_Question // @match https://jpdb.io/review* // @grant none // @version 0.01 // @author Flipp Fuzz // @description 6/12/2024, 6:06:28 PM // @run-at document-idle // @license MIT // ==/UserScript== (function() { 'use strict'; // Handling of answer is copied from https://gf.qytechs.cn/en/scripts/459772-jpdb-auto-reveal-answer-sentence/code // -こう- implemented the switch from question to answer without really navigating // by simply replacing the content and location.href on clicking the "show answer" button window.onload = observeUrlChange(addPitchToQuestion); // this handles refreshing the page while on the answer screen addPitchToQuestion(); })(); function observeUrlChange(onChange) { let oldHref = document.location.href; const body = document.querySelector("body"); const observer = new MutationObserver(mutations => { mutations.forEach(() => { if (oldHref !== document.location.href) { oldHref = document.location.href; onChange(); } }); }); observer.observe(body, { childList: true, subtree: true }); } function addPitchToQuestion() { if(new URL(location.href).searchParams.get('c')) { let pitchSearchResults = document.querySelectorAll('body > div.container.bugfix > div > div.review-reveal > div.result.vocabulary > div > div.subsection-pitch-accent > div > div > div > div'); let insertAfterElement = document.querySelector('body > div.container.bugfix > div > div.review-reveal > div.answer-box > div.plain > a'); if(!pitchSearchResults || pitchSearchResults.length == 0 || !insertAfterElement) { console.log(`pitchSearchResults: ${pitchSearchResults}`); console.log(`insertAfterElement: ${insertAfterElement}`); return; } // Create a div to add our new pitches into let containerDiv = document.createElement("div"); containerDiv.setAttribute('class', 'answer-pitch-container'); containerDiv.style.fontSize = "50%"; containerDiv.style.paddingLeft = "5px"; insertAfterElement.insertAdjacentElement('afterend', containerDiv); pitchSearchResults.forEach(pitch => { containerDiv.appendChild(pitch.cloneNode(true)); }); } }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址