Javascript 如何使用.animate()从特定侧扩展宽度

Javascript 如何使用.animate()从特定侧扩展宽度,javascript,jquery,html,css,animation,Javascript,Jquery,Html,Css,Animation,我正在尝试为一个项目的开始序列设置动画,我想知道如何使用.animate()使我的div从右侧“进来”,而不是从左侧(这似乎是默认设置) 我相信这是一个简单的解决方案,以下是我的代码和技巧: 谢谢 可以使用与元素宽度相等的值设置左边距,同时设置动画。这样做时,“宽度”动画基本上被边距置换 $(“#单击我”)。单击(函数(){ $(“.login”).animate({ “宽度”:“100”, “左边距”:“0” }); }); 。登录{ 高度:100px; 宽度:0px; 背景色:#f00;

我正在尝试为一个项目的开始序列设置动画,我想知道如何使用
.animate()
使我的div从右侧“进来”,而不是从左侧(这似乎是默认设置)

我相信这是一个简单的解决方案,以下是我的代码和技巧:


谢谢

可以使用与元素宽度相等的值设置
左边距
,同时设置动画。这样做时,“宽度”动画基本上被边距置换

$(“#单击我”)。单击(函数(){
$(“.login”).animate({
“宽度”:“100”,
“左边距”:“0”
});
});
。登录{
高度:100px;
宽度:0px;
背景色:#f00;
左边距:100px;
}

单击以更改大小

这是一个简单的解决方案,但对于简单的情况应该足够了:

使用具有准确宽度和高度的容器包装您的登录:

<div class="wrap">
  <div class="login"></div>
</div>
将.login移动到.wrap的右侧(使用左边距:100px;)并将溢出:隐藏添加到.wrap(.login将不可见) 而不是简单地将左边的边距重置为0:

$("#clickMe").click(function() {
    $(".login").animate({marginLeft: 0});
}); 

没有父母你能做到吗?
.login {margin-left: 100px; height: 100px; width: 100px; background-color: red;}
.wrap{
  width: 100px;
  height: 100px;
  overflow: hidden;
}
$("#clickMe").click(function() {
    $(".login").animate({marginLeft: 0});
});