<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>无缝滚动</title>
<style>
.scroll-no-gap {
width: 300px;
height: 100px;
position: relative;
overflow: hidden;
} .scroll-no-gap .ul-scroll {
list-style: none;
margin: 0;
padding: 0;
height: 100px;
width: 100px;
position: absolute;
left: 0;
top: 0;
} .scroll-no-gap .ul-scroll li {
width: 100px;
height: 100px;
line-height: 100px;
text-align: center;
float: left;
} .scroll-no-gap .ul-scroll li:nth-child(even) {
background-color: rosybrown;
} .scroll-no-gap .ul-scroll li:nth-child(odd) {
background-color: aquamarine;
}
</style>
</head>
<body>
<!--无缝滚动-->
<div class="scroll-no-gap">
<ul class="ul-scroll">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
</div>
<button class="prev">prev</button>
<button class="next">next</button>
<script>
//无缝滚动
//取值:oDiv.offsetLeft(可读写) ==>字符串
//设置值: oDiv.style.left(只读) ==> 数值
var oUl = document.getElementsByClassName('ul-scroll')[0];
var aLi = oUl.getElementsByTagName('li');
//console.log(aLi.length);
oUl.style.width = aLi.length * 100 + 'px';
//console.log(oUl.offsetWidth);
var oPrev = document.getElementsByClassName('prev')[0];
var oNext = document.getElementsByClassName('next')[0];
var now = 0;
oNext.onclick = function(){
now = now + 1;
oUl.style.left = oUl.offsetLeft - 300 + 'px';
if(now == 3){
oUl.style.left = 0;
now = 0;
}
};
oPrev.onclick = function(){
now = now - 1;
oUl.style.left = oUl.offsetLeft + 300 + 'px';
if(now == -1){
now = 2;
oUl.style.left = -(aLi.length/3 - 1)*300 + 'px';
}
}; </script>
</body>
</html>

javascrip实现无缝滚动的更多相关文章

  1. JavaScript学习笔记5 之 计时器 & scroll、offset、client系列属性 & 图片无缝滚动

    一.计时器 setInterval ( 函数/名称 , 毫秒数 )表示每经过一定的毫秒后,执行一次相应的函数(重复) setTimeout ( 函数/名称 , 毫秒数 ) 表示经过一定的毫秒后,只执行 ...

  2. JQuery的无缝滚动

    图片无缝向左滚动的代码如下:   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  3. JS 阶段小练习~ 无缝滚动

    结合下学了的知识,做个模拟的综合性扩展练习~~  大致功能如下: 1.点开html后,图片自动移动展示 2.点击左右方向,可以改变 图片移动的方向(改变left的值,正负) 3.鼠标移入移出图片后,图 ...

  4. 自己写了一个无缝滚动的插件(jQuery)

    效果图: html代码: 1 <h1>无缝滚动,向右滚动</h1> 2 <ul id="guoul1"> 3 <li><img ...

  5. js 无缝滚动效果学习

    <!DOCTYPE html> <html> <head> <title>无缝滚动测试</title> <meta http-equi ...

  6. Javascript学习之无缝滚动

    无缝滚动Javascript: <!DOCTYPE html> <html> <head> <meta charset="utf-8"&g ...

  7. js基础教程四之无缝滚动

    前面学习了相关js的一些基础知识,这节主要针对定时器作综合运用: 无缝滚动-基础 效果演示: *物体运动基础 *让div移动起来 *offsetLeft的作用 *用定时器让物体连续移动 <sty ...

  8. 带无缝滚动的轮播图(含JS运动框架)

    今天学习了一下轮播图的写作,想到前一阵学过的无缝滚动得思想,所以就把轮播与滚动结合了一下.不过我的代码的神逻辑我自己都不敢恭维,在没网没参照的情况下,只能硬着头皮往下写,希望跟大家共勉吧. js运动框 ...

  9. liMarquee演示12种不同的无缝滚动效果

    很实用的一款liMarquee演示12种不同的无缝滚动效果 在线预览 下载地址 实例代码 <!DOCTYPE html> <html lang="zh-CN"&g ...

随机推荐

  1. group by应用

    注意: having是对分组后的数据进行第二次筛选或者过滤,也就是说没有group by就没having where之后不能有聚合函数 查询每个年级的总学时数,并按照升序排列select GradeI ...

  2. linux 部分命令简单使用介绍-ssh、scp、less、tail、find、grep(持续添加)

    ssh 加密的网络协议,提供客户-服务模式. 登录                        ssh username@ip                        ssh ip #不提供用 ...

  3. SGU 178.Chain

    Solution: 一开始做的时候,以为可以将一条长度为n的链分成和n为的任意长度的3部分.结果第二组就Wa了 后来参考了题解,发现是将长度为n的链分成长度为1,x,n-1-x的三条链.再看看题目,不 ...

  4. 【BZOJ2648】【kd_tree】SJY摆棋子

    Description   这天,SJY显得无聊.在家自己玩.在一个棋盘上,有N个黑色棋子.他每次要么放到棋盘上一个黑色棋子,要么放上一个白色棋子,如果是白色棋子,他会找出距离这个白色棋子最近的黑色棋 ...

  5. 行列的几种命名方式.line-.colume======.row-.col=========.tr-.td

    第一种从line-height的语义来来讲,line表示hang再贴切不过了,colume纵列或者柱子也很形象,缺点太长了 第二种组合模拟rowspan,colspan而来,想必这个col也是colu ...

  6. CodeForces 554B(扫房间)

      CodeForces 554B Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u ...

  7. 实现OC与JS的交互

        oc-->js stringByEvaluatingJavaScriptFromString,其参数是一NSString 字符串内容是js代码(这又可以是一个js函数.一句js代码或他们 ...

  8. Microsfot SQL Server 2012 日志收缩

    //Microsfot SQL Server 2012 日志收缩 USE DataBaseName;GO ALTER DATABASE DataBaseNameSET RECOVERY SIMPLE; ...

  9. JSP 2秒跳转到首页

    <%@ page contentType="text/html;charset=utf-8" pageEncoding="utf-8"%><h ...

  10. Delphi重载,覆盖,多态

    一.override 重载 type TFigure = class procedure Draw; virtual;//(我的理解是)父类中可以使用父类的,子类中使用子类的.与“四”是有区别的. e ...