是否有可能检测用于Web开发中渐进增强的处理能力?

rom*_*ovs 7 javascript jquery progressive-enhancement css3

有时我需要添加超出CSS3滚动位置等效果范围的动画效果.

通常情况下这很好,但我最近遇到了一个尴尬的问题.我试图动画当用户向下滚动页面时发生的模糊效果,使用-webkit-filter: blur().

这很容易用一些JavaScript实现,但我发现动画模糊确实会降低用户处理器的负担.动画在我全新的超快速mac-book上运行正常,但未能在旧机器(甚至是我的机器上除Google Chrome之外的浏览器)上顺利运行.

实现细节并不重要,但我发现这个问题引出了一个问题:

我是否可以透明地检测(大概可能)客户端处理能力并使用这些知识来打开或关闭代码中的某些功能,以确保平稳的操作和动画?

我知道存在JavaScript动画库,它们可以在不占用大量处理能力的情况下做很棒的事情,但这不是我所追求的.我可以想到与动画无关的其他用例.

JLe*_*ich 3

如果您知道性能上限(您提到它不适用于新笔记本电脑上的某些最新浏览器),那么您可以使用用户代理信息来获取浏览器和操作系统信息,关闭以下版本的功能年龄超过您的上限。这是一个过于谨慎的近似值,您在设置阈值时始终可以使用您的判断。

另外,请参阅此相关问题:How can I test the user's computer's processing power using Javascript?

  • 浏览器嗅探无法提供有关 CPU 性能的任何信息,例如如何判断 Mac OS X 10.9.1 是否运行在具有双显卡的 6 核双 CPU Mac Pro 或具有集成显卡的 5 年前的 MacBook 上。 (3认同)