0

我正在将跨度内的一些文本添加到另一个元素。然后我通过线性缓动将其宽度设置为 0。但这不是我预期的结果。它有点滞后,中途就关闭了。这是发生了什么的视频,这 是我使用的代码

$('#' + id).animate({width: '10px'}, 1500, "linear", function() { $('#' + id).remove(); });

我怎样才能解决这个问题???

编辑:我用下面的代码实现了我想要的。而且由于间隔很高,我认为它不会造成任何性能问题,不是吗?

setTimeout(function() { decrementWidth(id); }, 400);

function decrementWidth(id)
{
    var width = $('#' + id).width();
    var dec = 20;
    if(width > dec)
    {
        width -= dec;
        $('#' + id).width(width);
        setTimeout(function() { decrementWidth(id); }, 100);
    }
    else
    {
         $('#' + id).remove();
   }
}
4

1 回答 1

0

啊啊啊小子!这是因为我在 span 元素上设置了过渡;所以通过设置以下内联样式来修复它:

transition: none;
于 2013-10-08T08:05:38.417 回答