2013-06-21 3 views
0

Я собрал этот jsfiddle.Вернуться обратно в предыдущее состояние на mouseleave

http://jsfiddle.net/YJPV9/

<div id="wrapper"> 
    <div class="portfolio"></div> 
    <div class="portfolio"></div> 
    <div class="portfolio"></div> 
    <div class="portfolio"></div> 
</div> 

.portfolio { 
    height:50px; 
    width:200px; 
    float:left; 
    margin:20px 20px 0 0; 
    background-color:red; 

} 
#wrapper { 
    width:500px; 
} 
.portfolio:hover { 
} 

$('.portfolio', '#wrapper').hover(function() { 
    $('.portfolio', '#wrapper').not(this).stop().animate({ 
     opacity: .2 
    }, 500); 

    $(this).stop().animate({ 
     opacity: 1 
    }, 500); 
}); 
$('.portfolio', '#wrapper').mouseleave(function() { 
    ('.portfolio', '#wrapper').animate({opacity:1}, 500); 
}); 

Я ищу вернуть все элементы обратно в непрозрачности: 1, когда мышь покидает оболочку.

+0

Вы знаете, что отсутствует '$' in '$ ('. Portfolio', '#wrapper'). Mouseleave (function() { !!!! ЗДЕСЬ !!!!! ('портфолио', '#wrapper'). animate ({opacity: 1}, 500); }); ', правильно? – acdcjunior

ответ

2

Попробуйте это:

$('.portfolio', '#wrapper').hover(function() { 
    $('.portfolio', '#wrapper').not(this).stop().animate({ 
     opacity: .2 
    }, 500); 
}, function(){ 
    $('.portfolio', '#wrapper').stop().animate({ 
     opacity: 1 
    }, 500); 
}); 

jsFiddle example

0

Был $ отсутствует в вашем Fiddle. Добавление, которое позволило ему работать по назначению.

+0

Я не уверен, что добавление '' 'фактически заставляет его работать по назначению. Это, безусловно, заставляет код работать без ошибок, но я думаю, что эффект в конечном счете ошибочен. –

+0

Насколько я понимаю, вы должны четко видеть элементы, пока не наведете одну из них. Возвращение возвращается к оригиналу, что позволяет увидеть их все. Кажется, это механик выбора. – sonoftunk