jQuery UI更改颜色无法正常工作(RoR应用程序)

时间:2015-07-22 13:30:58

标签: jquery css ruby-on-rails jquery-ui jquery-animate

我有一个购物车视图,其中包含我想要为颜色变化设置动画的元素列表。

列表中的每个元素都有白色或灰色背景,具体取决于它是否位于购物车中的奇数/偶数位置。

当我删除列表中间的元素时,它会向上滑动,所有元素都会相应地更改颜色,因为它们的位置已经改变。

以下是代码:

count = 0;
$(".cart_item").each(function(){
   if ( count % 2 == 0 )
   {
     $(this).delay(count * 1000).removeClass("background_gray",800);
   }
   else
   {
     $(this).delay(count * 1000).addClass("background_gray",800);
   }
   count += 1;
 });

添加类background_gray工作正常,但使用动画删除它不起作用。它被删除,但一次性内。

我也尝试过以下操作,但我也有同样的效果!

$(this).delay(count * 1000).addClass("background_white",800).removeClass("background_gray");

jQuery-UI已正确包含在内。

任何线索?

谢谢!

1 个答案:

答案 0 :(得分:2)

这不能回答你的直接问题,但是你知道你可以使用css设置备用行的样式,而不用麻烦搞乱javascript吗?

试试这个,而不是javascript

<style type="text/css">
  .cart_item:nth-child(even) {background: #ccc}
  .cart_item:nth-child(odd) {background: #FFF}
</style>

http://www.w3.org/Style/Examples/007/evenodd.en.html

显然,您仍然需要使用javascript删除li或者您正在做的任何事情。