如何让鼠标框在鼠标悬停时慢慢改变颜色。
js code
$('#link').animate({ backgroundColor: "#f6f6f6" }, 'slow', function(){
$('#link').animate({ backgroundColor: "#f6f6f6" }, 'slow');
})
css代码
#link
{
width:500px;
height:52px;
border:dashed #666 2px;
margin-top:293px;
}
html代码
<div id="link"></div>
答案 0 :(得分:4)
animation
<强> CSS 强>
#link
{
width:500px;
height:52px;
border:dashed #666 2px;
margin-top:293px;
}
#link:hover {
animation: color 1s ease-in-out 0 1 normal both;
}
@keyframes color {
0% { background: white; }
100% { background: #F6F6F6; }
}
transition
<强> CSS 强>
#link
{
background: transparent;
width:500px;
height:52px;
border:dashed #666 2px;
margin-top:293px;
transition: background .5s ease-in-out;
}
#link:hover {
background: red;
}
答案 1 :(得分:0)
你去吧。您可以使用jquery mouseover
和mouseleave
事件
$("#link").on("mouseover",function(){
$(this).animate({backgroundColor:"red"},'slow');
}).on("mouseleave",function(){
$(this).animate({backgroundColor:"white"},'slow');
});
您还需要JQuery UI library来完成这项工作。animate
是JQuery UI库的一部分。
以下是Jfiddle
答案 2 :(得分:-1)
你可以使用像这样的javascript函数
var div = document.getElementById( 'div_id' );
div.onmouseover = function() {
this.style.backgroundColor = 'green';
var h2s = this.getElementsByTagName( 'h2' );
h2s[0].style.backgroundColor = 'blue';
};
div.onmouseout = function() {
this.style.backgroundColor = 'transparent';
var h2s = this.getElementsByTagName( 'h2' );
h2s[0].style.backgroundColor = 'transparent';
};