在mouseleave上淡化背景并在mouseenter上展开。 jQuery的

时间:2016-08-21 17:40:23

标签: jquery

当我在网页上输入鼠标时,我正试图解开背景,但它似乎无法正常工作。我试过在这里寻找类似的解决方案,但无法这样做。

jQuery:

//fade
$("html").mouseleave(function(){
        $('#intro').fadeTo('slow',0.33,function(){
                    $("#intro").css("background");
        });
});
//unfade

$("html").mouseenter(function(){
        $('#intro').fadeTo('slow',1,function(){
                    $("#intro").css("background");
        });
});

褪色效果很好,但不褪色的部分就是我遇到的麻烦。

1 个答案:

答案 0 :(得分:1)

实际的淡入淡出效果很好。问题在于这里的语法错误:

$("#intro").css({background});

您正在使用对象表示法但未传递有效对象(键,值)。如果它应该是一个变量,那么删除大括号,或者如果它应该是一个对象,则给属性background一个值。



$("html").mouseleave(function(){
        $('#intro').fadeTo('slow',0.33,function(){
        $("#intro").css({background: 'green'});
        });
});

$("html").mouseenter(function(){
        $('#intro').fadeTo('slow',1,function(){
        $("#intro").css({background: 'red'});
        });
});

#intro {
width: 100px;
height: 100px;
background: red;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="intro">
</div>
&#13;
&#13;
&#13;