souris jquery sur div slideUp et de la souris sur div slideDown
Question
Voici mon code http://jsfiddle.net/AB6J3/7/ vous pouvez voir, éditer, etc.
Quand je roule sur boîte de bordure rouge, la boîte orange devrait glisser vers le haut et à la souris sur elle devrait glisser vers le bas. il fonctionne bien pour l'autre sens, mais quand je change slideDown à slideUp, cela ne fonctionne pas: / ce que je manque
aide Appreciate.
<!DOCTYPE html>
<html>
<head>
<style>
div#monster { background:#de9a44; margin:3px; width:80px; height:40px; display:none; float:left; position:absolute; right:10px; top:0; }
#clickk {width:40px; height:40px; background:#ccc; position:absolute; top:0; right:10px;}
</style>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>
<div style="width:550px; padding:40px 0 0;margin:0 auto; border:1px solid #111; position:relative;">
<div id="monster"></div>
<div id="clickk"></div><br />
<div style="width:500px; height:300px; background-color:#ccc; margin:0 auto;"></div>
</div>
<script>
$("#clickk").hover(function () {
if ($("#monster").is(":hidden")) {
$("#monster").slideDown("fast");
} else {
$("#monster").slideUp("fast");
}
});
</script>
</body>
</html>
La solution
Je pense que vous êtes mieux avec quelques modifications CSS ici, comme ceci:
#monster {
background:#de9a44;
width:80px;
height:60px;
display:none;
position:absolute;
left: 0;
bottom: 0;
}
#clickk {
width:80px;
height:60px;
border:1px solid #cc0001;
background:transparent;
position:absolute;
top:0;
right:10px;
}
Alors jQuery comme ceci:
$("#clickk").hover(function () {
$("#monster").slideToggle("fast");
});
Autres conseils
Vous devriez essayer ce qui suit:
$("#clickk").hover(function () {
$("#monster").slideUp("fast");
}, function() {
$("#monster").slideDown("fast");
});
Le second argument de .hover()
est le mouseout-fonction.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow