您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
vaptcha-iframe 依赖库
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/418420/878837/getVaptchaCode.js
- /**
- * getVaptchaCode v1.0
- * @author Jixun<https://jixun.moe/>
- * @license BSD-3-Clause
- */
- function getVaptchaCode(frameURL, container) {
- return new Promise((resolve) => {
- const {origin} = new URL(frameURL);
- const id = 'id' + Date.now() + Math.random();
- const frame = document.createElement('iframe');
- frame.style.transition = 'opacity 1s 1s';
- frame.style.opacity = 1;
- const eventHandler = (event) => {
- if (event.data.vaptcha === id) {
- resolve(event.data.token);
- window.removeEventListener('message', eventHandler);
- frame.style.opacity = 0;
- // Remove iframe after fadeout effects.
- setTimeout(() => {
- if (frame.parentNode) {
- frame.parentNode.removeChild(frame);
- }
- }, 1000);
- }
- };
- window.addEventListener('message', eventHandler);
- frame.src = frameURL;
- frame.onload = () => {
- frame.contentWindow.postMessage({ vaptcha: 'init', id }, origin);
- };
- container.appendChild(frame);
- });
- }