我试图在用户点击按钮时为div设置动画。每个按钮都会将div移动到不同的像素数量。我的代码在firefox和chrome中工作但不是IE8(到目前为止我只在IE8中测试它)。如果有人可以帮助我,我会很感激。
我的jquery
$(document).ready(function(){
function breakline(position) {
$('#breakline').animate({ //this code won't work...
top:position},'slow');
$('#breakline').hide(); //this code would work. I put it here just for testing
//purpose
};
$('#project a').click(function(){
breakline(256);
});
$('#code a').click(function(){
breakline(200);
});
$('#skill a').click(function(){
breakline(236);
});
$('#about a').click(function(){
breakline(190);
});
$('#contact a').click(function(){
breakline(200);
});
});/* ready */
我的HTML
<body>
<div id="main">
<div id="menu-wrapper">
<ul id="menu">
<li id="project"><a href="#"></a></li>
<li id="code"><a href="#"></a></li>
<li id="skill"><a href="#"></a></li>
<li id="about"><a href="#"></a></li>
<li id="contact"><a href="#"></a></li>
</ul>
<div id='breakline'> </div>
</div> <!-- menu wrapper -->
</body>
</HTML>
CSS的一部分
#breakline
{
width:580px;
height:100px;
background-image:url('breakline.png');
background-repeat:no-repeat;
float:left;
border:1px solid black;
}
答案 0 :(得分:2)
如果您在样式中添加position:relative
,则可以在IE8中使用。
#breakline
{
width:580px;
height:100px;
background-image:url('breakline.png');
background-repeat:no-repeat;
float:left;
border:1px solid black;
position:relative;
}
答案 1 :(得分:1)
我必须在breakline类中添加一些定位才能使其动画而不是隐藏。
添加位置:相对于#breakline css类