2012-03-10 71 views
0

我有以下两个函数。一个检查一个类,如果没有发现它会删除另一个类。第二个函数延迟执行第一个函数。两者都很好,但我不想突然搬走一堂课,而是逐渐淡出课堂。这是迄今为止我所拥有的。需要淡入淡出.txtCCC。淡入淡出延迟w/jQuery

function noExpand() { 
    exp = $("#prT span.ui-icon-triangle-1-s").size(); 
    if (exp == 0) { 
     $("#prT td.txtCCC").removeClass("txtCCC"); 
    } 
} 

$("#prT span.btn").bind("click",function() { 
    window.setTimeout(function(){ 
     noExpand(); //execute load function 
    },1000); 
}); 

似乎无法能够整合淡出...

回答

2

当然,可以动画addClass,toggleClassremoveClass。但你需要jQueryUI。

http://jqueryui.com/demos/removeClass/

$("#prT td.txtCCC").removeClass("txtCCC", 1000); 
+0

太好了,我实际上使用jQuery UI做其他事情。感谢您指出了这一点。 – santa 2012-03-10 17:32:24

1

你不能“变脸”的一类。它可能存在,或者不存在。但是,您可以为特定的数字CSS属性设置动画。看看.fadeOut().animate()。不知道txtCCC课程适用的具体样式,我不能更具体。

0

该属性上的类的存在是一件全有或全无的事情,你不能有中间步骤(这将是淡入淡出行为所必需的)。

你必须怎么做才能做到这一点是应用各种样式txtCCC应用于元素内嵌样式,删除类,然后用animate使这些风格慢慢转换为匹配值没有类的元素。不平凡的,至少可以说,尤其是。如果它包含颜色等(这jQuery不默认动画,虽然有插件)。

0

有没有办法在交叉淡入淡出的jQuery一类的效果。您需要使用.fadeOut().animate()

可以使用CSS3过渡然而褪色一类的效果:http://www.w3schools.com/css3/css3_transitions.asp

看到这个小提琴:http://jsfiddle.net/wya3N/

只适用于现代的浏览器,但。

+0

是的,我不能等待CSS3终于成为一个新的标准。不幸的是,IE仍然不支持它。我尽可能地使用CSS。 – santa 2012-03-10 18:03:09