我正在开发音频会议项目,以处理所有最新的浏览器。谁在谈论麦克风,将在服务器上生成一个事件,并在JavaScript中调用一个函数(whoIsTalking())。我将CSS替换为动画,以便通过切换CSS(依次切换背景图片)根据需要提高音量。但JavaScript的运行速度如此之快,我没有看到任何改变的CSS。演讲者发言时,我需要提高和降低音量。谁可以帮我这个事?如何使用CSS进行动画制作?
this.whoIsTalking = function (action, id, type) {
if(_selfM.logging) {
log.info("The current user who is " + action + " with id " + id + " , recieved from :" + type);
}
talker(id);
}
/**
* Change class for talker
*
*/
function talker(id) {
if(_selfM.logging) log.debug('Now in the "talker" function');
var talker = "talker_" + id;
$('span#' + talker).alterClass('btn-volum*', 'btn-volume_low');
console.log($('span#' + talker));
$('span#' + talker).alterClass('btn-volum*', 'btn-volume_medium');
$('span#' + talker).alterClass('btn-volum*', 'btn-volume_high');
$('span#' + talker).alterClass('btn-volum*', 'btn-volume_medium');
$('span#' + talker).alterClass('btn-volum*', 'btn-volume_low');
$('span#' + talker).alterClass('btn-volum*', 'btn-volume');
}
注:alterClass('x','y')
是一样removeClass('x').addClass('y')
;参考:alterClass
jQuery的优点之一是它是可链式的。 '$('span#'+ talker).alterClass(x,y).delay(100).alterClass(x,y).....' – 2013-03-28 04:03:38
检查alterclass是否正常工作。 – karthick 2013-03-28 04:12:35
@Derek - '' .delay()只适用于使用动画队列的方法,所以它可能不适用于'.alterClass()'。 – jfriend00 2013-03-28 05:07:12