视频卡顿这里的代码无法理解

视频卡顿这里的代码无法理解

  1. 如果一直卡顿的话就不会触发timeupdate事件,那么怎么去触发里面所设定好的定时器呢?

  2. 为什么要把清除定时器写到定时器前面?

  3. 当timeupdate事件被触发时,先执行清除定时器操作,那么下面的定时器是否会继续工作?


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

因为在视频播放的时候 , 时间是一直是更新的 , 所以这个事件也是不断的被触发 . 当视频卡顿的时候 , 由于视频卡顿的前一刻也是在触发timeupdate事件 . 那么定时器的代码就会被执行 , 当你视频在500ms后还是没有触发timeupdate事件 , 那么loading就会显示出来了 . 

但是如果卡顿没有到500ms . 就会触发timeupdate事件 , 那么上一次的定时器就会被清除 , 不过会再一次执行新的定时器 , 当timeupdate事件 不断触发的时候 , 每个事件清除的都是上一次事件中的定时器 . 

  1. 因为定时器是500ms以后执行 , 卡顿的时候 ,实际上定时器执行的是在卡顿之前的定时器 . 

  2. 清除定时器就是要放在定时器外部 , 因为它清除的是上一次timeupdate事件的定时器 

  3. 当timeupdate事件被触发时,先执行清除定时器操作,下面的定时器是继续工作的 . 这个定时器会被下一次的timeupdate事件清除 .

http://img1.sycdn.imooc.com//climg/5bed2ce600016f3012750552.jpg

这一块不是很好理解 , 建议同学能够多复习一下视频 ,并且跟着练习一下 . 能帮助自己去巩固理解 . 加油 

祝学习愉快 ,望采纳 .

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
响应式开发与常用框架 2018
  • 参与学习           人
  • 提交作业       2198    份
  • 解答问题       5012    个

如果你有web端基础,既想进阶,又想进军移动端开发,那就来吧,我们专题为你带来的课程有HTML5、CSS3、移动基础、响应式、bootstrap、less等,让你在前端道路上畅通无阻!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师