You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:为Auto Refresh Plus扩展编写点击第二个按钮的JS脚本

解决Auto Refresh Plus自动点击后续第二个按钮的JS脚本

核心思路

目标按钮的特征是带有btn btn-success btn-block类、文本为"Ticket"。我们需要在页面刷新后,捕捉到后续出现的第二个该按钮并点击,以下是两种可行的脚本方案:


方案1:定时轮询(简单易上手)

这种方式适合按钮加载速度较慢的场景,定期检查DOM中是否出现了第二个目标按钮:

function clickSecondTicketBtn() {
  // 获取所有匹配的按钮
  const allTicketBtns = document.querySelectorAll('button.btn.btn-success.btn-block');
  // 存在至少2个按钮时,点击第二个(索引从0开始,第二个对应索引1)
  if (allTicketBtns.length >= 2) {
    // 避免重复点击不可用按钮
    if (!allTicketBtns[1].disabled) {
      allTicketBtns[1].click();
      console.log("已触发第二个Ticket按钮点击");
      // 完成点击后停止轮询
      clearInterval(checkInterval);
    }
  }
}

// 每500毫秒检查一次,可根据页面实际加载速度调整间隔
const checkInterval = setInterval(clickSecondTicketBtn, 500);

方案2:DOM监听(高效精准)

通过监听DOM变化,在按钮出现时立即触发点击,比轮询更高效:

const btnSelector = 'button.btn.btn-success.btn-block';

function tryClickSecondBtn() {
  const allBtns = document.querySelectorAll(btnSelector);
  if (allBtns.length >= 2 && !allBtns[1].disabled) {
    allBtns[1].click();
    console.log("已点击第二个Ticket按钮");
    // 完成后停止监听,避免重复操作
    observer.disconnect();
  }
}

// 创建DOM变化监听实例
const observer = new MutationObserver(() => tryClickSecondBtn());

// 监听页面所有节点的变化
observer.observe(document.body, {
  childList: true,
  subtree: true
});

// 页面加载完成后先执行一次检查
tryClickSecondBtn();

使用方法

将上述任意一段代码复制到Auto Refresh Plus扩展的「脚本注入」配置栏中,保存后即可随页面刷新自动执行。

内容的提问来源于stack exchange,提问作者user1023268

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 18:12:38