【问题标题】:Can a HTMLElement.click() be limited to a certain amount of times used?可以将 HTMLElement.click() 限制为一定的使用次数吗?
【发布时间】:2020-05-05 14:13:18
【问题描述】:

下面有一位先生给我的书签脚本,非常有帮助,我希望了解是否可以将脚本限制为最多“单击”25 次,或者放慢速度每次“点击”都有某种等待时间,但我会在哪里包含这个?

javascript:(
  function(){
    document.querySelectorAll(`path[stroke-linecap='round']`).forEach(
      el => {el.parentElement.parentElement.parentElement.click()}
    )
  })
()

【问题讨论】:

    标签: javascript dom foreach onclick jquery-selectors


    【解决方案1】:

    这样的?

    javascript: (
      function() {
        const arr = [...document.querySelectorAll(`path[stroke-linecap='round']`)];
        const iterations = 25;
        let cnt = Math.min(iterations, arr.length);
        for (let ele of arr) {
          if (cnt-- > 0) ele.parentElement.parentElement.parentElement.click();
          else break;
        }
      })()
    

    放慢速度

    javascript: (
      function() {
        const arr = document.querySelectorAll(`path[stroke-linecap='round']`);
        const speed = 500; /* milliseconds */
        const iterations = 25;
        let cnt = Math.min(iterations, arr.length);
        const tId = setInterval(function() {
          if (cnt-- <= 0) clearInterval(tId);
          else arr[cnt].parentElement.parentElement.parentElement.click();
        }, 500)
      })()
    

    【讨论】:

    • 是的!很接近! let cnt = 25 是要更改的变量以加快或减慢速度,还是在需要时将其进一步限制为 10 或 15?谢谢!
    • 我加了一个setInterval
    猜你喜欢
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-16
    • 1970-01-01
    相关资源
    最近更新 更多