<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>simple banner</title>
<style type="text/css">
#container{
width: 300px;
border: 1px solid green;
margin: 100px auto;
overflow: hidden;
}
#box{
position: relative;
width: 1200px;
font-size: 0;
}
.child{
width: 300px;
height: 300px;
line-height: 300px;
text-align: center;
display: inline-block;
font-size: 20px;
color: red;
}
</style>
</head>
<body>
<div id="container">
<div id="box">
<div class="child">pic1</div>
<div class="child">pic2</div>
<div class="child">pic3</div>
<div class="child">pic4</div>
</div>
</div>
<script type="text/javascript">
var box = document.getElementById('box');
var childs = box.getElementsByClassName('child');
var childwidth = parseInt(childs[0].offsetWidth);
var len = childs.length;
var index = 1;
var timers;
function myanimate(mgleft){
if (parseInt(box.style.marginLeft) < -mgleft*index) {
box.style.marginLeft = -(parseInt(box.style.marginLeft) + 10) + 'px';
setTimeout(function(){
myanimate(childwidth);
}, 100));
};
}
timers = setInterval(function(){
if(index > len){
index = 1;
}
myanimate(childwidth);
index++;
},2000);
</script>
</body>
</html>
var childs=box.getElementsByClassName('child');
应该写成var childs = box.children();