在第一次加载时运行快速Javascript基准测试
Running a quick Javascript benchmark on first load
当用户第一次访问我的web应用程序以检测其计算机动画元素的能力时,我想运行一个简单快速的Javascript基准测试。我记得一位老师在大学里这样做是为了根据用户的机器调整游戏的帧速率。
这是可以在不牺牲太多用户资源的情况下完成的吗?也许在页面加载后几秒钟?如果结果不好,我们只会禁用该用户的部分或全部动画。
回答您在帖子中提出的问题:
1) 当一个人第一次加载你的网站时,可以运行JavaScript基准测试,以测试他们的CSS/JavaScript动画速度,但这将牺牲一些资源。你必须考虑访问你网站的人。如果他们要通过移动设备访问你的网站,你最不想做的就是让他们的设备停止,要么冻结浏览器,要么让其他应用程序内存不足。您不希望桌面或移动用户认为网站没有响应。
2) 页面加载后等待几秒钟的问题之一是,根据你想对网站做什么,人们会开始尝试滚动浏览你的内容。如果他们开始滚动并意识到网站"断断续续",他们可能会认为他们的设备出了问题。
另一个警告是,如果您想要尽可能平滑的动画,您可能最终会使用requestAnimationFrame(请参阅https://hacks.mozilla.org/2011/08/animating-with-javascript-from-setinterval-to-requestanimationframe/)。如果有人加载了你的网站,然后在你的测试运行时点击它到另一个选项卡,浏览器已经采取了降低非活动选项卡中的帧速率以支持活动选项卡中帧速率的做法。基于这种(不正确的)帧速率功能的测试将导致您的网站的某些部分被禁用,因为那些完全能够在所有动画都完好无损的情况下运行您的网站,所以这是您可能需要考虑的问题。
在我几个月前运行的一些测试中,CSS3版本的动画几乎总是比JavaScript版本的动画更流畅。然而,现在有一些jQuery库可以通过尽可能使用CSS3动画来弥补这一差距,例如jQuery Transit(http://ricostacruz.com/jquery.transit/)。
- Javascript单元测试
- 如何在Javascript中测试函数的相等性
- 单页应用程序的javascript集成测试
- 如何在 javascript 中测试 setTimeout 内部的函数
- 在JavaScript中测试一个无效参数w/Chai
- Javascript由于测试中的双反转逗号而失败
- JavaScript基准测试代码冻结了浏览器
- Javascript:基准测试以获得PC的每秒操作能力
- 基准测试Javascript、PHP和Dart
- 在第一次加载时运行快速Javascript基准测试
- JavaScript基准测试/评测
- Javascript基准测试“;类”;
- 什么是用于基准测试JavaScript引擎的最佳独立测试套件
- 有人尝试过用CouchDB更改和基准测试不同的javascript查询服务器吗
- Javascript concat vs push基准测试
- 高速Javascript基准测试
- 在浏览器中测量和基准测试javascript引擎的处理能力
- 对一些Javascript框架进行基准测试
- 是否可以对用户进行基准测试's系统,浏览器中有javascript
- 添加/删除DOM与编辑DOM的Javascript基准测试