首页 > 其他分享 >js window.requestAnimationFrame

js window.requestAnimationFrame

时间:2023-01-25 18:33:08浏览次数:62  
标签:浏览器 递归 requestAnimationFrame js window progress

https://stackoverflow.com/questions/17926327/why-requestanimationframe-recursion-wont-eat-up-ram
function

window.requestAnimationFrame() 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,
该回调函数会在浏览器下一次重绘之前执行

Here's the MDN's example:

function step(timestamp) {
  var progress = timestamp - start;
  d.style.left = Math.min(progress/10, 200) + "px";
  if (progress < 2000) {
    requestAnimationFrame(step);
  }
}

requestAnimationFrame(step);

Why "requestAnimationFrame" recursion won't eat up RAM?

stackoverflow上面有人说这个不是递归,但是自己栈就没有出来过,其实就是递归,自己尝试了其他的方法,这种调用方式就是递归或者基本一致,而js里面调用requestAnimationFrame可行是因为浏览器进行了处理,正如作用一样,这个函数用来请求刷新前执行的,因为浏览器自己有一个刷新的帧,我们直接通过requestAnimationFrame递归来就可以不用setInterval了,更加节省CPU/GPU...资源

标签:浏览器,递归,requestAnimationFrame,js,window,progress
From: https://www.cnblogs.com/sqmw/p/17067131.html

相关文章

  • JS 数字运算的矫正函数
    代码:constmath_helper={};/*加法*/math_helper.add=function(num1,num2){//两个参数应为有效的数字if(typeofnum1!=='number'||typeofnum2!=......
  • Windows: Screenshot
     全屏:到clipboardfn+printscreen 保存到C:\Users\Memento\Pictures\Screenshotsfn+win+printscreen f SnippingToolwin+shift......
  • pages.json 文件:自定义导航栏
    自定义导航栏使用注意当navigationStyle设为custom或titleNView设为false时,原生导航栏不显示,此时要注意几个问题:非H5端,手机顶部状态栏区域会被页面内容覆盖。这是因为窗......
  • pages.json 文件:globalStyle 全局配置
    globalStyle用于设置应用的状态栏、导航条、标题、窗口背景色等。属性类型默认值描述平台差异说明navigationBarBackgroundColorHexColor#F7F7F7导航栏背景颜......
  • 初识 Express 丨Node.js
    目录​​一、初识Express​​​​1.1Express简介​​​​1.2Express的基本使用​​​​1.3托管静态资源​​​​1.4nodemon​​​​ Node.js前篇回顾:​​一、初识E......
  • Composer 镜像原理 (2) —— composer.json
    相关文章Composer镜像原理(1)——初识ComposerComposer镜像原理(2)——composer.jsonComposer镜像原理(3)——完结篇有使用PHP组件的朋友,应该会注意......
  • cube.js 一些变动
    cube.js整体的机制是没有调整的,但是目前从官方介绍可以看出,已经从以前的无头bi调整为了语义层了,这个也说明了cube.js在数据处理能力上更加强大了一张参考图  说......
  • windows下解决机械硬盘Load_Cycle_Count过高的问题
          通常,硬盘制造商规定的Load_Cycle_Count数目上限是600,000次,要是超过300,000次就会影响到正常的读写,再多的话就差不多要报废了。windows下通过修改高级电源设......
  • JS数组的常用方法
    join()(数组转字符串)数组转字符串,方法只接收一个参数:即默认为逗号分隔符()。<script> vararr=[1,2,3,4]; console.log(arr.join());//1,2,3,4 console.log(arr.join......
  • 网页怎样引入本地硬盘上的JS文档
    网页通过<script>标记可以引入在线的js文档,只有把网页保存在本地硬盘才能使用相对路径引入本地js文档,普通浏览器难以实现在线页面上引入本地js文档。怎么解决这个问题......