Jquery UI:在动画添加类的回调上动画删除类失败

时间:2010-01-05 21:45:24

标签: jquery jquery-ui

当添加一些新的列表项时,我希望它通过动画添加一个类并在回调后删除它来“闪烁”。

这是代码:

$li.addClass('new', 1000, function() {
    $li.removeClass('new', 500);
});

的CSS:

#galleries-list li {
    margin-top: 10px;
    background-color: #EEFFFF;
    border: 1px solid #99FFFF;  
    }
#galleries-list li.new {
    background-color: #DDFFBB;
    border: 1px solid #99FF66; 
    }

更新:

我发现了什么问题。当我删除fadeOut时,它工作。我不知道为什么。也许你可以检查一下并将它发送到jQuery UI开发者。

$('input, img', $li).fadeOut(150, function() {
  $gallery.set($li, name, 0); //Clears html and sets gallery name and image count
  $li.addClass('create', 2000, function() { $li.removeClass('create', 500); }); 
});

2 个答案:

答案 0 :(得分:5)

我认为addClass和removeClass没有持续时间参数。 http://docs.jquery.com/Addclass

你可以尝试

li.addClass(“new”)。animate({“opacity”:1},500,function(){      li.removeClass( “新”); });

这将添加“new”类,然后暂停半秒,然后删除该类。

答案 1 :(得分:1)

已知错误 这在Safari 4中不起作用,但它已在未发布的(在撰写本文时)1.8版本的jQuery UI中修复。

抱歉,我已删除了我的答案,因为您的代码完全正确。但是,即使他们的addClass演示在Safari 4中也不起作用,但在Firefox 3.5中运行良好。

更新:如果您访问Firefox 3.5中的页面,则可以看到your code working here