Возможно, вы захотите использовать mouseenter
и mouseleave
вместо.
var w;
$('input[readonly]').mouseenter(function(){
if ($(this).val().length > 20) {
w = $(this).css('width');
$(this).attr('data-default', $(this).width());
$(this).animate({width: 300}, 'slow');
$(this).parent().addClass('cooling');
}
});
$('input[readonly]').mouseleave(function(){
if ($(this).val().length > 20) {
$(this).attr('data-default', $(this).width());
$(this).animate({width: w}, 'slow');
$(this).parent().addClass('cooling');
}
});
Возможно, вы захотите удалить класс охлаждения в mouseleave?
Рабочий образец:
http://jsfiddle.net/DCjYA/189/