setInterval(function(),5)在iOS或任何移动设备上均不起作用

问题描述 投票:0回答:1

因此,当我在浏览器中使用代码时,一切正常,没有任何问题。但是,当我单击Chrome Dev Tools并使用设备模式来模拟任何类型的移动设备或ipad时,代码都不会运行。

我也已经在几种新的移动设备上进行了物理尝试,但仍然无法正常工作。即使当我在函数内使用最简单的代码或将间隔值比率降低到几乎没有..也没有响应时。

与通过鼠标/触摸按下的按钮链接

function moveLeft() {
  time = setInterval(function () {
    angle += 1;
    if (angle > 360) {
      angle = 0;
    }
  }, 5);
}

我猜测也许正在进行某种形式的节流,以阻止处理足够快地运行,但是即使我减小了范围,它仍然不起作用。兼容性说它可以在所有手机上运行吗?

javascript google-chrome-devtools setinterval throttling mobile-devices
1个回答
0
投票

[好吧,结果证明这是我的简单疏忽,与setInterval无关。.我试图使用mousedown和mouseup事件侦听器触发按钮保持。.显然,移动设备改用touchstart和touchend事件侦听器.. setInterval功能确实可以很好地工作,这解释了为什么它在除移动设备之外的所有地方都可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.