当使用CSS过渡/动画/等时,如果用户浏览器不执行css动画,那么回退到jquery的最佳方法是什么?

我正在寻找一种使用css动画的方法,但是如果用户浏览器没有做css动画 – 然后再回到使用Jquery动画。 在Jquery有一个简单的方法吗? 如果它是一个小插件,插件就可以了,但是如果可能的话,我真的在寻找一些在jquery中这样做的方法。 我想使用css动画的唯一原因是因为使用css动画时使用的处理器功率要低得多。

jQuery animate增强插件使用CSS转换,而无需为具有转换function的浏览器编写特定代码

替代方案不是很令人鼓舞:您可以添加一个function检测库,如Modernizr,然后为每个案例编写特定代码,例如……

if (Modernizr.csstransitions) { $("#yourdiv").css({ "-webkit-transform" : "translate(0, 10)", "-o-transform" : "translate(0, 10)", "-moz-transform" : "translate(0, 10)", "-ms-transform" : "translate(0, 10)", "transform" : "translate(0, 10)" }); } else { //do jquery animate stuff } 

你不应该关心它。 动画并不重要。 如果你进行渐进式增强,每个用户都将获得他们的浏览器让他们拥有的最佳体验:)。

如果您非常关心“处理器能力”,那么您根本不想在IE上拥有动画。 否则,只使用jQuery,这似乎最适合您的特定需求。

jQuery建议使用jQuery.support来确保浏览器维护的某些function。 喜欢:

 jQuery.support.opacity //returns true/false 

核心jQuery没有让位于测试CSS3属性,但是插件可以。 你可以在function描述后的评论中找到一些这样的插件(比如这个 )