jQuery show-“;推;以动画速度播放内容

jQuery show-“;推;以动画速度播放内容,jquery,jquery-ui,animation,Jquery,Jquery Ui,Animation,将show与动画一起使用时,如果我显示的元素中包含的任何元素都有维度,则dom似乎会弹出,以便在设置显示动画之前为完全展开的元素腾出空间 例如: 试验 $(文档).ready(函数(){ $(“#扩展器_按钮”)。单击(函数(){ 如果($(“#扩展器”)。是(':可见的){ $(“#扩展器”).hide(); } 否则{ $(“#扩展器”).show('scale',{percent:100,origin:['top',right']},1500); } }); }); 是否有任何方法可以

将show与动画一起使用时,如果我显示的元素中包含的任何元素都有维度,则dom似乎会弹出,以便在设置显示动画之前为完全展开的元素腾出空间

例如:


试验
$(文档).ready(函数(){
$(“#扩展器_按钮”)。单击(函数(){
如果($(“#扩展器”)。是(':可见的){
$(“#扩展器”).hide();
}
否则{
$(“#扩展器”).show('scale',{percent:100,origin:['top',right']},1500);
}
});
});

是否有任何方法可以使围绕元素的缩放以动画的速度发生?因此,在上面的JSFIDLE中,测试按钮将被缓慢地“推”开,而不是弹起,为整个动画腾出空间,这类似于slideToggle的工作方式。

正如@Boaz所建议的,这需要使用
.animate()
而不是
.show

$("#expander").animate({height:'show',width:'show'}, 1500);
…以及一些CSS调整,以确保您的元素按需要定位和缩放。具体来说,在
扩展器
DIV中添加一个
浮动:right
,并在按钮之前在其下方添加一个清晰的fix DIV,以确保按钮在DIV扩展时平稳向下移动


使用JSFIDLE,从您的中派生出来,这里:

您可能应该研究这个方法。
$("#expander").animate({height:'show',width:'show'}, 1500);