Я встретил некоторую проблему с менеджером jquery menu mouseenter. Как исправить при вводе мыши p
, p
еще display block
?jQuery mouseenter mouseout в меню
<script>
$(document).ready(function() {
$('a').mouseenter(function(){
$('p').css('display','none');
$(this).next('p').slideDown('slow');
}).mouseleave(function(){
$('p').slideUp('slow');
});
$('p').mouseenter(function(){
$(this).css('display','block');
});
});
</script>
<div>
<a>menu1</a>
<p>about us</p>
<a>menu2</a>
<p>contact</p>
</div>
<style>
div{
position:relative;
z-index:0;
width:600px;
height:20px;
}
p{
display:none;
position:absolute;
top:20px;
left:0;
width:300px;
height:100px;
background:#ccc;
}
</style>
Живая демонстрация: http://jsfiddle.net/KTvf7/
(1) '$ ('р') MouseEnter (функция() {$ (это) .css ('дисплей', 'блок'); $ (Это) .show(); }); 'ничего не делает (' p' является блоком alreay и отображается, иначе вы не можете его ввести). (2), если пользователь покидает меню из элемента 'a',' p' показывается. – ori
Я согласен с тобой ... Моя ошибка спешки .. $ (this) .show(); бесполезен в приведенном выше кодексе – Alexander