jQuery UI 滑动轻松同级推送

标签 jquery jquery-ui slide

我使用 jQuery UI 的 slide 切换效果来切换 div:

$("#link").click(function(){
    $("#targetDiv").toggle("slide", {direction: "up"}, 1000);
});

幻灯片是唯一具有我想要的动画的效果,本质上是 div 从顶部向下。我不需要 toggleSlide 因为这只会改变元素的高度。

slide 的唯一问题是它会立即将同级推到最终位置: http://jsfiddle.net/XYDyy/2/

那么有没有办法让同级元素随着动画 div 的调整而调整它们的位置?

如有任何建议,我们将不胜感激。

最佳答案

你可以通过在 jQuery 添加的 .ui-effects-wrapper 上执行 slideUp()/slideDown() 来欺骗它元素:

$("#link").click(function() {
    if ($("#div1").is(':visible')) {
        $("#div1").toggle("slide", {direction: "up"}, 1000);
        $("#div1").parent(".ui-effects-wrapper").slideUp(1000);
    } else {
        $("#div1").toggle("slide", {direction: "up"}, 1000);
        $("#div1").parent(".ui-effects-wrapper").hide().slideDown(1000);
    }
});

演示:http://jsfiddle.net/jtbowden/LARkS/

否则,您可以添加自己的包装器,并在其上执行 slideUp,并将 #div1 的位置设置为 bottom: 0px.

演示:http://jsfiddle.net/jtbowden/RDWt8/

关于jQuery UI 滑动轻松同级推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10092794/

相关文章:

jquery - 单击下一张轮播幻灯片时停止播放 YouTube 视频

java - 如何创建滑动面板

android - ActionBarSherlock Tab - 滑动

javascript - jQuery fancybox click function for dynamically added content not firing on iOS, iPhone, or iPad

javascript - 使用 jQuery 删除 CSS 属性

javascript - 如何检测元素是否超出其容器的宽度?

jQuery UI 对话框未在 IE9 中设置 "left"属性

javascript - 单击按钮上的动画滑动 div jQuery

jquery-ui - 防止 $.ajaxStart() 在 jquery-ui 自动完成期间执行

javascript - jQuery UI 日期选择器显示不正确(透明)