【发布时间】:2012-02-29 00:55:36
【问题描述】:
所以我一直在创建一个简单的动画,它复制一个 div,并在窗口上展开它。我正在尝试对其进行优化,使其不那么不稳定,并且想知道是否有人可以帮助我。所以我一直在读到你不能对正在动画的元素进行任何填充或边距设置,因为这会减慢一切。这是我正在使用的动画功能:
$('.content_cell').on('click', function(event) {
var $clonedElement = $( this ).clone(true).attr('class','cloned_object content_cell').appendTo('#mainContentTable');
$clonedElement.css({left:$(this).position().left,
top:$(this).position().top,
opacity:0}) ;
//Position caching for closing animation
selectedPos = $(this).position();
var currPos= $('#invitedToChatCell').position();
//Now animate the cloned element to the correct size
$clonedElement.animate({
height:640, width:700,
//position:'absolute',
left:currPos.left,
top:currPos.top,
opacity:1.0
}, 500, function(){ $('.cloned_object > ul').toggle(); });
event.stopPropagation();
});
内容单元格 CSS 和 cloned_object css 如下所示
.content_cell {
border-style: solid;
cursor:pointer;
width:300px;
height:300px;
overflow:auto;
}
.cloned_object{
position:absolute;
background-color:white;
width:300px;
height:300px;
}
有人知道为什么这是一个如此缓慢的动画吗?或者我能做些什么来加快速度?提前谢谢...
更新: 这是一个 JSFiddle link
【问题讨论】:
-
如果你能养成从jsfiddle.net链接一个工作示例的习惯,那会很有帮助=)
-
哦,好主意...看起来该站点现在已关闭?还是只有我一个人?
-
jsfiddle 有时有点过载。继续努力吧。
-
NVM,进去了。只是比平时花了更长的时间。
标签: javascript jquery html css animation