您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a Play Again button after flcollapse div on Neopets Battledome
// ==UserScript== // @name Battledome Play Again Button // @namespace http://tampermonkey.net/ // @version 1.3 // @description Adds a Play Again button after flcollapse div on Neopets Battledome // @author Bryan // @license MIT // @match https://www.neopets.com/dome/arena.phtml* // @grant none // ==/UserScript== (function() { 'use strict'; // Function to create and style the button function createPlayAgainButton() { var button = document.createElement('button'); button.textContent = 'Play Again'; button.id = 'customPlayAgain'; button.addEventListener('click', function() { var playAgain = document.getElementById('bdplayagain'); if (playAgain) { playAgain.click(); console.log('Play Again clicked'); } else { console.log('bdplayagain element not found'); } }); // Match Neopets button styling button.className = 'caction'; button.style.display = 'inline-block'; button.style.margin = '5px'; button.style.padding = '8px 16px'; button.style.backgroundColor = '#4CAF50'; button.style.color = 'white'; button.style.border = 'none'; button.style.borderRadius = '4px'; button.style.cursor = 'pointer'; button.style.fontFamily = 'Arial, sans-serif'; button.style.fontSize = '14px'; button.style.position = 'relative'; return button; } // Function to insert the button after flcollapse div function insertButton() { if (document.getElementById('customPlayAgain')) { return; } var flcollapse = document.getElementById('flcollapse'); if (flcollapse && flcollapse.parentNode) { // Insert after the flcollapse div if (flcollapse.nextSibling) { flcollapse.parentNode.insertBefore(createPlayAgainButton(), flcollapse.nextSibling); } else { flcollapse.parentNode.appendChild(createPlayAgainButton()); } console.log('Play Again button inserted after flcollapse div'); } else { console.log('flcollapse div not found yet'); } } // Initial attempt after DOM load window.addEventListener('load', function() { insertButton(); }); // MutationObserver for dynamic content const observer = new MutationObserver(function(mutations) { insertButton(); }); observer.observe(document.body, { childList: true, subtree: true }); // Fallback interval let attempts = 0; const maxAttempts = 15; const interval = setInterval(function() { if (document.getElementById('customPlayAgain') || attempts >= maxAttempts) { clearInterval(interval); if (attempts >= maxAttempts) { console.log('Max attempts reached, button insertion failed'); } } else { insertButton(); attempts++; } }, 500); // Check every half second })();