我在使用slideDown时遇到问题。而不是整齐地向下滑动元素开始'摇动'而不是直接显示没有动画。另一方面,SlideUp完美无缺。
我做了一个jsFiddle:http://jsfiddle.net/4x4PK/1/
单击+
按钮时出现问题。 ×
按钮工作正常。
有一些JS插件,有问题的on.('click' ...)
代码一直在底部。
答案 0 :(得分:3)
好的,好像我找到了解决方案。问题是我认为slideDown函数需要在动画开始之前知道元素的高度(知道动画的端点)。
当我用after()添加元素时,告诉它的高度还为时过早。
最后我找到了这个有效的解决方案:
$(this).closest('.smoking-rate').after( $el );
$el.hide().slideDown()
有人可以证实,高度是不起作用的原因吗?
答案 1 :(得分:0)
完成幻灯片动画后,您应该调用slideDown:
$el.slideUp(1).slideDown('slow')
应该是
$el.slideUp(1, function(){
$el.slideDown('slow');
});