Попробуйте это:
$(document).ready(function() {
$('label').hover(function() {
var hue = 'rgb('
+ (Math.floor(Math.random() * 256)) + ','
+ (Math.floor(Math.random() * 256)) + ','
+ (Math.floor(Math.random() * 256)) + ')';
$(this).stop().animate( { color: hue }, 500);
},function() {
$(this).stop().animate( { color: '#000' }, 500);
});
});
Также смотрите мой jsfiddle .
=== ОБНОВЛЕНИЕ ===
function startAnimation(o) {
var hue = 'rgb('
+ (Math.floor(Math.random() * 256)) + ','
+ (Math.floor(Math.random() * 256)) + ','
+ (Math.floor(Math.random() * 256)) + ')';
$(o.currentTarget).animate( { color: hue }, 500, function() {
startAnimation(o);
});
}
$(document).ready(function() {
$('label').hover(
startAnimation,
function() {
$(this).stop().animate( { color: '#000' }, 500);
}
);
});
Смотрите мой обновленный jsfiddle .