Greasy Fork is available in English.
每天只需点击一个按钮即可签到 Automate daily sign-in with a click of a button
当前为
// ==UserScript==
// @name 🤖IMYAI网站点击按钮快速每日签到 Daily Sign-in Automation in IMYAI
// @namespace http://tampermonkey.net/
// @version 0.3
// @description 每天只需点击一个按钮即可签到 Automate daily sign-in with a click of a button
// @author GPT4.0
// @match https://ai.imyai.top/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
// Function to simulate a mouse click
function simulateClick(element) {
const mouseClickEvents = ['mousedown', 'click', 'mouseup'];
mouseClickEvents.forEach(mouseEventType =>
element.dispatchEvent(
new MouseEvent(mouseEventType, {
view: window,
bubbles: true,
cancelable: true,
buttons: 1
})
)
);
}
// Function to add the new button to the page
function addButton() {
const newButton = document.createElement('button');
newButton.innerText = '快速签到';
// Add styles to make the button orange and prominent
newButton.style.cssText = `
position: fixed;
top: 10px;
left: 10px;
z-index: 10000;
padding: 10px 20px;
background-color: orange;
color: white;
border: none;
border-radius: 5px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
font-weight: bold;
cursor: pointer;
transition: background-color 0.3s, box-shadow 0.3s;
`;
newButton.onclick = function() {
// Query for the first sign-in button
const firstSignInButton = document.querySelector('svg.iconify--noto');
if (firstSignInButton) {
simulateClick(firstSignInButton);
}
// Check for the second button and the close button every half second
const checkExist = setInterval(function() {
const secondSignInButton = document.querySelector('div.flex.mt-3.w-full.mt-14 > button.n-button--info-type');
const closeButton = document.querySelector('.n-base-close.n-base-close--absolute.n-card-header__close'); // This selects the close button using the classes provided
if (secondSignInButton) {
simulateClick(secondSignInButton);
// Wait for half a second before attempting to click the close button
setTimeout(() => {
if (closeButton) {
simulateClick(closeButton);
}
}, 500);
clearInterval(checkExist); // Stop checking once the button has been clicked
}
}, 500); // Check every 500ms
};
document.body.appendChild(newButton);
}
// Add the button after the DOM is fully loaded
if (document.readyState === 'complete') {
addButton();
} else {
window.addEventListener('load', addButton);
}
})();