Я почти уверен, что для получения background-color
псевдо :hover
сначала потребуется событие браузера для применения стиля. Другими словами, я думаю, что вы могли бы получить это , когда вы наводите мышкой, но не раньше.
Возможно, вы могли бы подождать, пока пользователь не наведет курсор, затем захватить цвет, переопределить его по умолчанию, сохранить его для дальнейшего использования, а затем выполнить анимацию, но это может быть больше проблем, чем простая координация JS и CSS.
Примерно так: http://jsfiddle.net/UXzx2/
// grab the default color, and create a variable to store the hovered.
var originalColor = $('div').css('background-color');
var hoverColor;
$('div').hover(function() {
// On hover, if hoverColor hasn't yet been set, grab the color
// and override the pseudo color with the originalColor
if( !hoverColor ) {
hoverColor = $(this).css('background-color');
$(this).css('background-color',originalColor);
}
// Then do your animation
$(this).animate({backgroundColor:hoverColor});
});