为什么jquery ui addClass动画参数没有效果?

为什么jquery ui addClass动画参数没有效果?,jquery,jquery-ui,css-animations,Jquery,Jquery Ui,Css Animations,目标:临时设置元素上的类更改动画,将背景颜色更改为蓝色,然后恢复正常 方法:使用jQueryUI的addClass方法将一个类添加到元素中指定的时间(毫秒),然后使用removeClass删除 问题:动画效果很好,但无论我做什么,持续时间和缓和的参数都没有效果。为什么? 也欢迎其他办法 //查找元素 var banner=$(“#banner消息”); 变量按钮=$(“按钮”); //句柄单击并添加类 按钮。打开(“单击”,函数(){ //临时换班 //flashClass(“alt”,横幅,

目标:临时设置元素上的类更改动画,将背景颜色更改为蓝色,然后恢复正常

方法:使用jQueryUI的addClass方法将一个类添加到元素中指定的时间(毫秒),然后使用removeClass删除

问题:动画效果很好,但无论我做什么,持续时间和缓和的参数都没有效果。为什么?

也欢迎其他办法

//查找元素
var banner=$(“#banner消息”);
变量按钮=$(“按钮”);
//句柄单击并添加类
按钮。打开(“单击”,函数(){
//临时换班
//flashClass(“alt”,横幅,{inTime:2000,outTime:500,easeName:'swing'});
//请尝试使用长持续时间的默认方法仅添加类
banner.addClass(“alt”,2000,“swing”);
//尝试仅添加类的显式版本
/*
banner.addClass(“alt”,{
期限:2000年,
放松:“挥杆”,
完成:函数(){},
孩子们:错,
队列:对
});
*/
})
函数flashClass(类名、jqElem、transitionObj){
if(!(className&&jqElem))返回false;
if(!transitionObj){
transitionObj={
时间:500,
休息时间:500,
名称:“线性”
}
}
addClass(类名,transitionObj.inTime,function()){
setTimeout(函数(){
removeClass(类名,transitionObj.outTime,null);
}, 500);
});  
}
正文{
背景:#20262E;
填充:20px;
字体系列:Helvetica;
}
#横幅信息{
背景:#fff;
边界半径:4px;
填充:20px;
字体大小:25px;
文本对齐:居中;
过渡:均为0.2s;
保证金:0自动;
宽度:300px;
}
钮扣{
背景:#0084ff;
边界:无;
边界半径:5px;
填充:8px 14px;
字体大小:15px;
颜色:#fff;
}
#banner-message.alt{
背景:#0084ff;
颜色:#fff;
边缘顶端:40px;
宽度:200px;
}
#banner-message.alt按钮{
背景:#fff;
颜色:#000;
}

你好,世界

变色
我想你只是需要一个好的回调。它将使用
setTimeout()
确保它不会立即运行

$(函数(){
//查找元素
var banner=$(“#banner消息”);
变量按钮=$(“按钮”);
//句柄单击并添加类
按钮。单击(功能(e){
banner.addClass(“alt”,2000年,removeAlt);
});
函数removeAlt(t){
setTimeout(函数(){
banner.removeClass(“alt”);
}, 2001);
}
});
正文{
背景:#20262E;
填充:20px;
字体系列:Helvetica;
}
#横幅信息{
背景:#fff;
边界半径:4px;
填充:20px;
字体大小:25px;
文本对齐:居中;
过渡:均为0.2s;
保证金:0自动;
宽度:300px;
}
钮扣{
背景:#0084ff;
边界:无;
边界半径:5px;
填充:8px 14px;
字体大小:15px;
颜色:#fff;
}
#banner-message.alt{
背景:#0084ff;
颜色:#fff;
边缘顶端:40px;
宽度:200px;
}
#banner-message.alt按钮{
背景:#fff;
颜色:#000;
}

你好,世界

变色
我想你只是需要一个好的回调。它将使用
setTimeout()
确保它不会立即运行

$(函数(){
//查找元素
var banner=$(“#banner消息”);
变量按钮=$(“按钮”);
//句柄单击并添加类
按钮。单击(功能(e){
banner.addClass(“alt”,2000年,removeAlt);
});
函数removeAlt(t){
setTimeout(函数(){
banner.removeClass(“alt”);
}, 2001);
}
});
正文{
背景:#20262E;
填充:20px;
字体系列:Helvetica;
}
#横幅信息{
背景:#fff;
边界半径:4px;
填充:20px;
字体大小:25px;
文本对齐:居中;
过渡:均为0.2s;
保证金:0自动;
宽度:300px;
}
钮扣{
背景:#0084ff;
边界:无;
边界半径:5px;
填充:8px 14px;
字体大小:15px;
颜色:#fff;
}
#banner-message.alt{
背景:#0084ff;
颜色:#fff;
边缘顶端:40px;
宽度:200px;
}
#banner-message.alt按钮{
背景:#fff;
颜色:#000;
}

你好,世界

变色
我已经用上面的flashclass()函数尝试过了,但只有setTimeout持续时间有效。banner.addClass(“alt”,2000,removeAlt)仍然以标准持续时间(fast)设置动画,而不是以参数指定的“2000”设置动画。我已经用上面的flashclass()函数尝试过了,但只有SetTimeout持续时间才有效果。banner.addClass(“alt”,2000,removeAlt)仍然以标准持续时间(fast)设置动画,而不是参数指定的“2000”。