一个问题让人想起回答this one,其中OP希望应用此转换:
test.css({transition: 'height 1s linear', height: '100px'});
然后回到这个:
test.css({transition: 'none', height: '0px'});
他说他需要从js那里完成,并要求更好的主意,所以我提出了这个方法:
test.animate({height: '100px'}, 1000, 'linear', function(){
test.css({transition: 'none', height: '0px'});
});
这是我的jsFiddle:https://jsfiddle.net/mqaunyvp/1/
@Matrix评论说,JS和jQuery动画的优化程度低于原生CSS,这是正确的,但我认为不是那个主题。所以这就是问题:
按照我建议的方式完成这项工作是否正确?或者你会建议反对吗?为什么呢?
答案 0 :(得分:1)
所有评论的结论:
jQuery
并非为动画对象 而创建,因此它可能会很慢且滞后(取决于您动画的内容和数量)。但是,例如,使用jQuery
的{{1}}功能滚动页面在大多数情况下效果非常好。
对于更高级的动画 (例如移动对象或同时执行复杂或多个动画),请将库用作velocity
。
如果您只想为文本样式/颜色或下拉菜单设置动画 ,则使用CSS过渡/动画的速度更快(也更容易)()。
所以这取决于你在做什么。希望这有帮助!