如何编写Tampermonkey脚本:点击按钮后检测内容并循环刷新页面
改进后的Tampermonkey脚本:自动点击按钮+循环检测目标文本
没问题,我帮你调整脚本逻辑,让它先点击指定按钮,等动态内容加载完成后再检测目标文本,没找到就刷新页面重复整个流程。这里要注意的是,点击按钮后内容是动态渲染的,得给页面留一点加载时间,不能立刻检测。
下面是修改后的完整脚本:
// ==UserScript== // @name Auto Click & Text Detector // @namespace http://tampermonkey.net/ // @version 0.1 // @description 自动点击按钮、检测目标文本,未找到则刷新重试 // @author You // @match 替换成你的目标页面URL // @grant none // ==/UserScript== $(document).ready(function() { // 你要查找的目标文本 const targetText = "News"; // 目标按钮的类选择器 const buttonSelector = '.btn.btn-success.btn-lg.btn-block'; // 等待动态内容加载的延迟时间(毫秒,可根据页面速度调整) const loadDelay = 1500; // 定位并点击目标按钮 const targetButton = $(buttonSelector); if (targetButton.length > 0) { targetButton.click(); // 等待内容加载后再执行检测 setTimeout(() => { // 检查页面是否包含目标文本 if ($('*:contains("' + targetText + '")').length > 0) { alert(`找到目标文本:${targetText}`); } else { // 未找到就刷新页面,重新执行流程 location.reload(); } }, loadDelay); } else { // 如果页面找不到按钮,直接刷新重试 console.log("未找到目标按钮,刷新页面重试..."); location.reload(); } });
关键细节说明:
- 按钮选择器:
.btn.btn-success.btn-lg.btn-block是根据你提供的类名组合的精准选择器,确保能定位到目标按钮 - 加载延迟:
loadDelay设置为1.5秒,你可以根据页面实际的动态加载速度调整——如果内容加载慢,就把数值调大一点 - 循环逻辑:每次刷新页面后,脚本会自动重启,重复「点击按钮→等待加载→检测文本」的流程,直到找到目标文本为止
- URL匹配:记得把脚本里的
@match字段替换成你要运行脚本的目标页面URL,否则脚本不会生效
内容的提问来源于stack exchange,提问作者Aditya Dave
相关产品推荐
相关产品推荐

