8

我想动画 div 向右滑动,如下例所示:

http://jsfiddle.net/56hxy/3/

但是我不想移动边距,而是想“挤压”宽度,但通过改变宽度 % ( width: '60%') 却无法正常工作,而是向左挤压..

4

1 回答 1

27

不确定这是否正是您要寻找的,但请尝试:

$('#content').animate({
    marginLeft: '40%',
    width:'60%'
});

小提琴


或者在 CSS 中给right:0#content,然后你可以为它设置动画width,它会从左到右收缩而不需要边距。效果与上述相同,但更清洁。小提琴

此外,jQuery 有一个用于交替单击的内置“切换事件”,因此,如果您只切换单击事件,则可以使用:

$('#content').toggle(function() { 
    $(this).animate({ width:'60%' }); 
}, function() {
    $(this).animate({ width:'100%' }); 
});

小提琴

于 2013-01-12T21:14:52.990 回答