js实现可控制左右方向的无缝滚动效果


Posted in Javascript onMay 29, 2016

本文实例为大家分享了无缝滚动效果JavaScript代码实现,供大家参考,具体内容如下】

效果图:

js实现可控制左右方向的无缝滚动效果

实现代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="gb2312" />
    <title>zzzz</title>
    <style>
      *{
        margin: 0;
        padding:0;
      }
      body{
        width: 1000px;
        margin: 100px auto;
        background-color: #fff;
      }
      #wrapper{
        overflow: hidden;
        width: 600px;
        height: 100px;
        position: relative;
         
      }
      #wrapper ul {
        position: absolute;
        left: 0;
        top: 0;
      }
      #wrapper li{
        float: left;
        list-style: none;
      }
      #wrapper li img{
        width: 150px;
        height: 100px;
        border-radius: 9px;
      }
      input[type=button]{
        margin-top: 20px;
        width: 35px; 
        height: 25px;
        line-height: 25px;
      }
    </style>
    <script type="text/javascript">
      window.onload=function(){
        var timer=null;
        var speed=4;
        var od=document.getElementById("wrapper");
        var au=od.getElementsByTagName('ul')[0];
        var ali=au.getElementsByTagName('li');
        au.innerHTML=au.innerHTML+au.innerHTML;
        au.style.width=ali[0].offsetWidth*ali.length+'px';
        timer=setInterval(move,30)
        function move(){
          if(au.offsetLeft<-au.offsetWidth/2){
            au.style.left='0';
          }
          if(au.offsetLeft>0){
            au.style.left=-au.offsetWidth/2+'px';
          }
          au.style.left=au.offsetLeft+speed+'px';
        }
        od.onmouseover=function(){
          clearInterval(timer);
        }
        od.onmouseout=function(){
          timer=setInterval(move,30)
        }
        document.getElementById("btn1").onclick=function(){
          speed=-4;
        }
        document.getElementById("btn2").onclick=function(){
          speed=4;
        }
      }
    </script>
  </head>
  <body>
    <div id="wrapper">
      <ul>
        <li><img src="img/pic4.jpg"/></li>
        <li><img src="img/pic3.jpg"/></li>
        <li><img src="img/pic2.jpg"/></li>
        <li><img src="img/pic1.jpg"/></li>
      </ul>
    </div>
    <input type="button" name="" id="btn1" value="向左" />
    <input type="button" id="btn2" value="向右"/>
  </body>
</html>

大家可以参考以下专题进行学习:

以上就是本文的全部内容,希望对大家学习JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery制作简单柱状图实例
Jan 28 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
Nov 27 Javascript
创建一个类Person的简单实例
May 17 Javascript
jQuery Select下拉框操作小结(推荐)
Jul 22 Javascript
jquery 中toggle的2种用法详解(推荐)
Sep 02 Javascript
JS+HTML5实现上传图片预览效果完整实例【测试可用】
Apr 20 Javascript
vscode中vue-cli项目es-lint的配置方法
Jul 30 Javascript
在小程序中使用Echart图表的示例代码
Aug 02 Javascript
简单通过settimeout看javascript的运行机制
May 10 Javascript
在Layui中实现开关按钮的效果实例
Sep 29 Javascript
微信小程序返回上一级页面的实现代码
Jun 19 Javascript
JavaScript实现页面动态验证码的实现示例
Mar 23 Javascript
原生JavaScript编写canvas版的连连看游戏
May 29 #Javascript
js省市县三级联动效果实例
Apr 15 #Javascript
js实现精确到秒的倒计时效果
May 29 #Javascript
解读Bootstrap v4 sass设计
May 29 #Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
May 29 #Javascript
深入理解js数组的sort排序
May 28 #Javascript
深入理解js函数的作用域与this指向
May 28 #Javascript
You might like
PHP运行时强制显示出错信息的代码
2011/04/20 PHP
Laravel 5框架学习之用户认证
2015/04/09 PHP
教你php如何实现验证码
2016/01/20 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
php实现计算百度地图坐标之间距离的方法
2016/05/05 PHP
jQuery源码分析-02正则表达式 RegExp 常用正则表达式
2011/11/14 Javascript
用jquery统计子菜单的条数示例代码
2013/10/18 Javascript
jquery动态加载select下拉框示例代码
2013/12/10 Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
2015/09/06 Javascript
解决JS请求服务器gbk文件乱码的问题
2015/10/16 Javascript
Vue.js第一天学习笔记(数据的双向绑定、常用指令)
2016/12/01 Javascript
angular实现表单验证及提交功能
2017/02/01 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
2017/08/17 jQuery
jQuery中 DOM节点操作方法大全
2017/10/12 jQuery
浅谈Node异步编程的机制
2017/10/18 Javascript
nodejs更改项目端口号的方法
2018/05/13 NodeJs
搭建vue开发环境
2018/07/19 Javascript
vue-cli2 构建速度优化的实现方法
2019/01/08 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
详解js实时获取并显示当前时间的方法
2019/05/10 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
[04:44]显微镜下的DOTA2第二期——你所没有注意到的细节
2014/06/20 DOTA
[01:13:17]Secret vs NB 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python虚拟环境virtualenv的使用教程
2017/10/20 Python
python使用rpc框架gRPC的方法
2018/08/24 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
Python如何将将模块分割成多个文件
2020/08/04 Python
一些常用的HTML5模式(pattern) 总结
2015/07/14 HTML / CSS
人民教师的自我评价分享
2014/02/21 职场文书
清明节网上祭英烈活动总结
2014/04/30 职场文书
卫生标语大全
2014/06/21 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
工作收入证明范本
2015/06/12 职场文书
Python 实现Mac 屏幕截图详解
2021/10/05 Python
Java 在线考试云平台的实现
2021/11/23 Java/Android
mysql实现将字符串字段转为数字排序或比大小
2022/06/14 MySQL