У меня есть фильтр, работающий на ряде элементов списка, который постепенно уменьшает меньшие желательные элементы к 0,25 непрозрачности, но я хотел бы иметь их возврат непрозрачности к 1 и затем обратно вниз к 0,25 на парении и. Действительно ли это довольно просто сделать?
Я только испытываю затруднения при нахождении способа захватить текущую непрозрачность выбранного элемента, таким образом, я могу сохранить его в переменной для использования.
$('#centerPanel li').hover(function(){
var currentOpacity = $(this).?????
$(this).fadeTo(1,1);
},
function(){
$(this).fadeTo(1,currentOpacity);
});
Вам необходимо установить переменную непрозрачности мыши вне функции, это не позволит вашей функции изменить это значение.
nohoverOpacity = $('#centerPanel li').css("opacity");
hoverOpacity = 1;
dur = 1000;
$('#centerPanel li').hover(function(){
$(this).fadeTo(dur,hoverOpacity);
},function(){
$(this).fadeTo(dur,nohoverOpacity);
});
Вы этого хотите? :)
$('#centerPanel li').hover(function(){
if(!$(this).is(':animated'))
$(this).animate({opacity: 'toggle'}, 1000);
},
function(){
if(!$(this).is(':animated'))
$(this).animate({opacity: 'toggle'}, 1000);
});