我编写了一个程序来为 div 内容设置动画。这是根据鼠标位置工作的。在mousemove
事件中,如果鼠标位置超过窗口高度的 1/3,内容将向上动画(内容将出现)。否则它将动画到下行(消失)。该程序正在给出正确的结果,但它需要时间。我认为动画函数多次调用。
如何改进代码?
请检查代码:
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
var ww;
var wh;
var moverHeight="150";
var moveRespondPosition;
$(document).ready(function()
{
ww=$(window).width();
wh=$(window).height();
$("#mover")
.css("height",moverHeight)
.css("bottom",-moverHeight);
moveRespondPosition=wh-(wh/3);
$(document).mousemove(function(e)
{
var mousePosition=e.pageY;
if(mousePosition>moveRespondPosition)
{
setTimeout('animateElem(0)',100);
}
else
{
setTimeout('animateElem(-moverHeight)',100);
}
});
});
function animateElem(value)
{
$("#mover").animate
({
"bottom":value
});
}
</script>
<style type="text/css">
*
{
padding: 0px;
margin: 0px;
}
body
{
overflow-y: hidden;
}
#wraper
{
width: 100%;
height: 100%;
position: relative;
}
#mover
{
width: 100%;
background-color: #192B44;
position: absolute;
}
</style>
</head>
<body>
<div id="wraper">
<div id="mover">
Content
</div>
</div>
</body>
</html>