您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
等待满足某种条件后执行,支持嵌套调用
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greasyfork.icu/scripts/412875/1177822/WaitUntil.js
// ==UserScript== // @name WaitUntil // @namespace http://bbs.91wc.net/?wait-until // @version 0.1.3.2 // @description 等待满足某种条件后执行,支持嵌套调用 // @author Wilson // ==/UserScript== var WaitUntil = function(cond, callback, interval, trys, times) { var timer = null; var tryCount = 0; var runCount = 0; interval = interval || 100; trys = trys || 300; times = times || 1; var wait = function(cond, callback, interval, trys, times) { if(timer) clearTimeout(timer); timer = setTimeout(function(){ tryCount++; if(tryCount > trys) { return; } if(cond()){ runCount++; if(callback) callback('OK'); if(times < 0 || runCount < times) { wait(cond, callback, interval, trys, times); } } else { wait(cond, callback, interval, trys, times); } }, interval); } wait(cond, callback, interval, trys, times); } //使用示例 //WaitUntil(function(){return typeof jQuery !=="undefined" && $(".test").length>0}, function(){ // alert($(".test").html()); //}); //其他参数 //cond 满足条件的函数 //callback 条件满足后执行的回调函数 //interval 监听满足条件的时间间隔,单位毫秒,默认100 //trys 尝试次数,超过这个数值就停止监听,默认为300(因默认间隔是100毫秒,所以默认停止监控时间为300*100毫秒,即30秒) //times 执行次数,默认执行1次,-1为无限次,0会忽略,等同于1次