首页 > 代码库 > js实现无缝轮播
js实现无缝轮播
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>23333</title>
<style>
*{
margin: 0;
padding: 0;
}
ul,li{
list-style: none;
}
.warp{
height: 150px;
width: 616px;
margin: 50px auto;
overflow: hidden;
background-color: red;
position: relative;
}
.imgs{
position: absolute;
}
.imgs li{
width: 150px;
height: 146px;
float: left;
margin: 2px;
cursor: pointer;
background-color: yellow;
}
</style>
</head>
<body>
<div class="warp">
<ul id="imgs" class="imgs">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
<script type="text/javascript">
window.onload=function () {
var margin=4;//元素间距
var speed=-5;//左移速度(右移为正)
var timer=null;//定时器
var oUl=document.getElementById("imgs");
var aLi=oUl.getElementsByTagName("li");
var liWidth=aLi[0].offsetWidth+margin;//li宽度
var liCount=aLi.length;//li个数
oUl.innerHTML+=oUl.innerHTML;//复制内容追加
oUl.style.width=liWidth*aLi.length+‘px‘;
oUl.style.height=liWidth+‘px‘;
timer=setInterval(function(){
//向左移动判断
if(Math.abs(oUl.offsetLeft)>=liWidth*liCount){
oUl.style.left="0px"; }
//向右的判断
//if(Math.abs(oUl.offsetLeft)==0){
// oUl.style.left=-liCount*liWidth+‘px‘;
// }
oUl.style.left=oUl.offsetLeft+speed+‘px‘;
},100);
oUl.onmouseover=function(){
clearInterval(timer);
};
oUl.onmouseout=function(){
timer=setInterval(function(){
if(Math.abs(oUl.offsetLeft)>=liWidth*liCount){
oUl.style.left="0px";
}
oUl.style.left=oUl.offsetLeft+speed+‘px‘;
},100)
}
}
</script>
js实现无缝轮播
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。