javascript
html5实现无缝滚动的效果,基于JavaScript实现无缝滚动效果
本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)無(wú)縫滾動(dòng)效果展示的具體代碼,供大家參考,具體內(nèi)容如下
首先應(yīng)該區(qū)分樣式中的絕對(duì)定位和相對(duì)定位,一般來(lái)說(shuō),移動(dòng)的單位為絕對(duì)定位,在這個(gè)實(shí)例中,移動(dòng)的Ul就是絕對(duì)定位 ,否則它根本無(wú)法滾動(dòng),而它相對(duì)于div1滾動(dòng) ,則div1就作為他的相對(duì)定位。
oUl.innerHTML=oUl.innerHTML+oUl.innerHTML;這段代碼是實(shí)現(xiàn)無(wú)縫滾動(dòng)的核心,使之可以在不論左右滾動(dòng)的時(shí)候都有下一步圖片接上去。
在操作或者進(jìn)行比較的時(shí)候,都要用offset取值來(lái)進(jìn)行操作或者比較!!!
代碼:
無(wú)縫滾動(dòng)2*{
padding: 0;
margin:0;
}
#div1{
position: relative;
width: 800px;
height: 200px;
background:red;
margin:100px auto;
overflow: hidden;
}
#div1 ul{
position: absolute;
left: 0;
top: 0;
}
#div1 ul li{
float: left;
list-style: none;
width: 200px;
height: 200px;
}
window.οnlοad=function()
{
var oDiv = document.getElementById('div1');
var oUl = oDiv.getElementsByTagName('ul')[0];
var aLi = oDiv.getElementsByTagName('li');
var aA = document.getElementsByTagName('a');
var speed = 3;
oUl.innerHTML=oUl.innerHTML+oUl.innerHTML;
oUl.style.width=aLi.length*aLi[0].offsetWidth+'px';
var timer=setInterval(move,30);
function move()
{
if (oUl.offsetLeft<=-oUl.offsetWidth/2) {
oUl.style.left="0";
}
if(oUl.offsetLeft>0){
oUl.style.left=-oUl.offsetWidth/2+'px';
}
oUl.style.left=oUl.offsetLeft+speed+'px';
};
oDiv.οnmοuseοver=function()
{
clearInterval(timer);
};
oDiv.οnmοuseοut=function()
{
timer=setInterval(move,30);
};
aA[0].οnclick=function()
{
speed=-3;
};
aA[1].οnclick=function()
{
speed=3;
};
};
向左
向右
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
總結(jié)
以上是生活随笔為你收集整理的html5实现无缝滚动的效果,基于JavaScript实现无缝滚动效果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 重装系统 linux启动windows系
- 下一篇: gradle idea java ssm