【问题标题】:HTML5 Canvas – Stop previous requestAnimationFrame [duplicate]HTML5 Canvas – 停止之前的 requestAnimationFrame [重复]
【发布时间】:2016-09-17 22:51:48
【问题描述】:

我正在使用 HTML 画布。我希望仅在未再次触发单击功能时才请求新帧。基本上我希望它“停止”以前的递归,我想

document.addEventListener('click', function(){

    [...]

    var animate = function() {
      if (the click event was NOT fired again) {
        requestAnimationFrame(animate);
      }
    };
    animate();

});

我该怎么做?

【问题讨论】:

    标签: javascript html canvas


    【解决方案1】:

    您可以设置一个全局变量,如rafId,并在您调用 rAF 的行中将其设为类似;

    rafId = requestAnimationFrame(animate);
    

    然后在需要时调用cancelAnimationFrame(),例如cancelAnimationFrame(rafId)

    【讨论】:

    • 完美运行,谢谢!
    猜你喜欢
    • 2013-10-27
    • 2013-01-06
    • 1970-01-01
    • 2021-09-09
    • 1970-01-01
    • 2019-01-17
    • 2015-06-18
    • 1970-01-01
    • 2020-02-27
    相关资源
    最近更新 更多