Jquery鼠标滑过div slideUp和鼠标滑出div slideDown

时间:2010-09-06 23:29:23

标签: jquery html slideup slidedown

以下是我可以查看,编辑等的代码 http://jsfiddle.net/AB6J3/7/

当我翻到红色边框时,橙色框应向上滑动,鼠标向外滑动时应向下滑动。它适用于其他方式,但当我将slideDown更改为slideUp时,它不起作用:/我缺少什么?

感谢帮助。

<!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>​

2 个答案:

答案 0 :(得分:6)

我认为你最好在这里进行一些CSS调整,比如:

#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;
}

那么jQuery就像这样:

$("#clickk").hover(function () {
  $("#monster").slideToggle("fast");
});​

You can test it out here。     

答案 1 :(得分:2)

您应该尝试以下方法:

$("#clickk").hover(function () {
    $("#monster").slideUp("fast");
}, function() {
    $("#monster").slideDown("fast");
});

.hover()的第二个参数是mouseout-function。