Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当按钮变为活动时,单击该按钮_Javascript_Html_Web - Fatal编程技术网

Javascript 当按钮变为活动时,单击该按钮

Javascript 当按钮变为活动时,单击该按钮,javascript,html,web,Javascript,Html,Web,我目前正试图找到一个解决我的问题的办法,我有一个网站是订单进来,有一个按钮,它变成蓝色,我需要点击它接受所有订单 其背后的逻辑是,这是一个始终保持灰色的按钮,当订单输入时,它会变成蓝色并处于活动状态,需要按下。它是浏览器中的网站 window.onload=function() { setInterval(autoClick,100); } function autoClick() { if(document.getElementsByClassName("accept").len

我目前正试图找到一个解决我的问题的办法,我有一个网站是订单进来,有一个按钮,它变成蓝色,我需要点击它接受所有订单

其背后的逻辑是,这是一个始终保持灰色的按钮,当订单输入时,它会变成蓝色并处于活动状态,需要按下。它是浏览器中的网站

window.onload=function() {

  setInterval(autoClick,100);
}

function autoClick() {

  if(document.getElementsByClassName("accept").length>0) {
    document.getElementsByClassName("accept")[0].click();
  }
}

我已经开始了,但不知道该如何检测按钮是否变为蓝色。

您可以做的是查询这个确切按钮的id并获取其
类列表

然后检查
classLsit
是否包含要查找的类

它看起来像这样

const btn = document.getElementById("btn");
console.log(btn.classList.contains("basic")); // true or false
所以你的代码必须是

window.onload=function()
  {
  const myAcceptButton = document.querySelector('.accept')

  setInterval(autoClick,100);

  function autoClick()
    {
    if (myAcceptButton.classList.contains('neworder'))
      {
      myAcceptButton.click();
      }
    }
  }
或使用箭头功能的较短代码

window.onload=function() {

  const myAcceptButton = document.querySelector('.accept')

  setInterval(() => {
    if (myAcceptButton.classList.contains('neworder'))
      { myAcceptButton.click(); }
  }, 100);
}

这个按钮是否有可以用来查询的id或其他选择器?是的,它有一个id它的“acceptorders”你如何管理你的状态?1)有多少个带有accept类的按钮?2) 他们的人数能动态变化吗?3) 它们是如何变蓝的?网站上只有一个按钮,按钮会动态变化而不刷新。当订单输入时,它会变成蓝色。我需要循环脚本吗?还是它会一直检查类是否已创建added@AdamD. setInterval自己负责完成这个循环,但100毫秒似乎离我很近