我必须为具有特定图形的主菜单链接(关于我们、联系人等)设置动画(我正在使用带有背景图像类的锚点)。我想知道画布是否是动画特定 div(我的菜单)的最佳方式。我只想在被点击后向上/向下移动 100px。例如:我单击“项目”,我的锚点(带有我的图像)向下移动了 100 像素。当我点击“关于我们”时,“项目”链接向上移动(在其原始位置),“关于我们”向下移动 100 像素。
画布是正确的方法吗?我也可以使用 css3 过渡/动画,但不支持 IE9。我希望 IE9 能够正确呈现我的网站。
我应该为此使用画布或某种 javascript 插件吗?(我也可以使用具有相对/绝对定位的普通 javascript,不断改变顶部像素,但我不喜欢它的结果)。我使用纯 javascript 是这样的:
我的菜单:
<div id="menu">
<ul class="nav">
<li><a href="#" class="projects" id="projects" onclick="move()"></a>
</li>
<li><a href="#" class="aboutus"></a>
</li>
<li><a href="#" class="contact"></a>
</li>
</ul>
我的 CSS:
a.projects
{
width: 184px;
height: 32px;
background: url('css-images/projects.png') no-repeat;
position: absolute;
}
#menu
{
position:relative;
}
我的JavaScript:
function move(){
var proj = document.getElementById("projects");
var count = 0;
var id = setInterval(loop, 30);
function loop(){
proj.style.top = count + "px";
var max = 100;
count+=10;
if(count >= max){
clearInterval(id);
}
}
}