您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Waits for an element using the MutationObserver API
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/528234/1546775/waitForElement.js
- // ==UserScript==
- // @name waitForElement
- // @namespace Violentmonkey Scripts
- // @version 1.2
- // @description Waits for an element using the MutationObserver API
- // @author maanimis
- // @grant none
- // ==/UserScript==
- /**
- * Waits for a element of a given selector.
- *
- * @param {string} selector
- * @returns {Promise<HTMLElement>}
- */
- function waitForElement(selector) {
- return new Promise((resolve) => {
- const ELEMENT = document.querySelector(selector);
- if (ELEMENT) {
- return resolve(ELEMENT);
- }
- console.log("can't find element for selector:", selector, "waiting...");
- const observer = new MutationObserver(() => {
- const ELEMENT = document.querySelector(selector);
- if (ELEMENT) {
- console.log("element found!!");
- resolve(ELEMENT);
- observer.disconnect();
- }
- });
- observer.observe(document.body, {
- childList: true,
- subtree: true,
- });
- });
- }