jquery - 使用 jQuery animate 使 div 从中心向下滑动?

标签 jquery css css-transitions

由于常规的 jQuery 动画在 iOS 上不流畅(.hide()slideDown()),我试图将我的速记转换为 .fade ().slideDown() 函数转换为普通的 .animate() 函数,这样我就可以使用 jQuery.Animate将这些动画转换为 CSS3 的插件,同时保持 jQuery 回退。

我认为使用这种方法淡化一个 div 应该很容易,但是试图让一个 div 从中心向下滑动让我很头疼。

div 的正常 CSS 是...

.zip{
    width:130px;
    height:70px;
    left:50%;
    top:50%;
    margin-top:-46px;
    margin-left:-76px;
    position: absolute;
    text-align: center;
    z-index: 2;
    background:rgba(0,155,23,.8) url(overlay.png);
    border-radius: 10px;
    padding:10px;
    border:1px solid #fff;
    box-shadow:0 0 40px #000;
} 

然后我使用下面的延迟,然后让 div 向下滑动...

$(".zip").delay(1000).slideDown(200);

显然,这工作正常,但它不会被插件拾取。

那么,如何使用 .animate() 将其转换为函数?

我的尝试:

CSS...

.zip{
    display:none;
    height:0;
    padding:0;
    /* Plus everything else */
} 

jQuery...

$('.zip').delay(1000).animate({
    display: "block",
    height: "70px",
    padding: "10px",
});

除了这是从左 Angular 滑下,而不是中间。

另外,也许我做的完全错了,有更好的方法在 iOS 设备上使用 CSS3 加速转换,同时仍然提供 jQuery 回退,在这种情况下,请分享!

最佳答案

同时为 width 和 margin-left 设置动画。或者,您可以仅设置宽度动画并将边距设置为自动(这意味着水平居中)

关于jquery - 使用 jQuery animate 使 div 从中心向下滑动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11216356/

相关文章:

javascript - CSS Spritesheet 运动过渡。无需滑动背景图像即可轻松

css - React JS 中 css 转换结束后如何使用 setState?

css - 变换矩阵上带有过渡的奇怪动画

javascript - 隐藏元素时是否禁用 CSS3 转换?

javascript - 鼠标移出并关闭对话框

javascript - 带箭头顶部和边框的框

javascript - JQuery Mobile 中同一行的格式标签和切换开关

css - 将 Episerver 升级到版本 11.5 后,TinyMCE "EditMenuName"css 属性不起作用

javascript - Jquery Mobile 阻止 $(window).scroll 事件触发

javascript - 对存储在变量中的 div 内容进行排序