定时器无法实现无缝滚动效果怎么解决

1.练习定时器来实现照片的无缝滚动,但是按照视频的思路来做弄了很久也不知道哪里出了问题,各位大神帮忙看看呗

图片描述
<!doctype html>
<html lang="en">
<head>

<meta charset="UTF-8">
<title>Document</title>

<style type="text/css">
*{margin: 0px;
  padding:0px;
 }
#div1 ul li{

    list-style:none;
    float:left;
}
#div1{
    width: 800px;
    height: 150px;
    background-color: red;
    margin: 10px auto;
    position:relative;
    overflow: hidden;
}
#div ul{
    position: absolute;
    left:0;
    top:0;
}
</style>

<script type="text/javascript">
window.onload=function () {
    var oDiv=document.getElementById('div1');
    var oUl=document.getElementsByTagName('ul')[0];
    var aLi=document.getElementsByTagName('li');

    oUl.innerHTML=oUl.innerHTML+oUl.innerHTML;
    oUl.style.width=aLi[0].offsetWidth*aLi.length+'px';

    setInterval(function(){
        oUl.style.left=oUl.offsetLeft-2+'px';
    },30);
};
</script>

</head>
<body>
<div id="div1">

<ul>
    <li><img src="img2/1.jpg" width="200px" height="150px"></li>
    <li><img src="img2/2.jpg" width="200px" height="150px"></li>
    <li><img src="img2/3.jpg" width="200px" height="150px"></li>
    <li><img src="img2/4.jpg" width="200px" height="150px"></li>
</ul>

</div>
</body>
</html>

阅读 2.6k
1 个回答
#div1 ul{
    position: absolute;
    left:0;
    top:0;
}

ul定位问题,你的样式中#div1写成了#div

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题