博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS_简单无缝图片滚动
阅读量:6972 次
发布时间:2019-06-27

本文共 1853 字,大约阅读时间需要 6 分钟。

 

 

滚动原理:

function(a,b){

        if(a.scrollLeft>=b){
            a.scrollLeft=0;
            }
        a.scrollLeft++;

}

a:节点,b:阀值.

/*css*/

.main{width:500px;margin:0 auto;padding-top:50px;}

.imgBox{height:102px;overflow:hidden;_position:relative;}
.imgContent{width:90000px;_position:absolute}
.imgBox ul{float:left;}
.imgBox li{float:left;width:100px;height:100px;background:#CCC;border:1px solid #000;margin-right:20px;overflow:hidden;_display:inline;}

/*html*/

<div class="main">

 <div class="imgBox" id="imgRun"> 滚动层
  <div class="imgContent" id="imgCon"> 内容层,为了JS写的方便而多写的层
  <ul>
   <li style="background:#000"><img src="" width="100" height="100"/></li>
   <li style="background:#F00"><img src="" width="100" height="100"/></li>
   <li style="background:#00F"><img src="" width="100" height="100"/></li>
   <li style="background:#F0F"><img src="" width="100" height="100"/></li>
   <li style="background:#FF0"><img src="" width="100" height="100"/></li>
  </ul>
  </div>
 </div>
</div>

/*js*/

var Class = {   

  create: function() {   
    return function() {                           
      this.initialize.apply(this, arguments);   
    }   
  }   
}
var imgRunleft = Class.create();
imgRunleft.prototype = {
    initialize: function(a,b){
        this.imgRun = document.getElementById(a);
        this.imgCon = document.getElementById(b);
        this.imgUl     = this.imgCon.getElementsByTagName("ul");
        this.imgLi    = this.imgCon.getElementsByTagName("li");
        if(!this.imgRun)return; //判断滚动层存在
        if(this.imgRun.offsetWidth>=this.imgUl[0].offsetWidth)return;//判断滚动层的宽度和内容层的宽度,如果前者大于等于后者则返回
        this.imgCon.appendChild(this.imgUl[0].cloneNode(true));
        this.base();
        },
    base: function(){
        var fazhi    = this.imgUl[0].offsetWidth;
        var runLe     = this.runLe;
        var imgRun     = this.imgRun;
        setInterval(function(){
            runLe(imgRun,fazhi);
            },30);
        },
    runLe: function(a,b){
        if(a.scrollLeft>=b){
            a.scrollLeft=0;
            }
        a.scrollLeft++;
        }
    }
new imgRunleft("imgRun","imgCon")

 

 

转载于:https://www.cnblogs.com/somesayss/archive/2012/06/09/2543008.html

你可能感兴趣的文章
java内存分配研究
查看>>
第 25 章 Munin
查看>>
【iOS】在Swift中使用JSONModel
查看>>
Node.js与Sails~Model数据模型
查看>>
Swift Internal Parameter and External Parameter 外部参数和内部参数
查看>>
DDD~领域层
查看>>
冷备份校验和恢复
查看>>
RedHat 6.8 内核编译
查看>>
I.MX6 Android 设备节点权限
查看>>
mysql中order by 和limit一起使用不当会导致效率极慢的4种优化方法
查看>>
您的Docker 容器还健康吗?一条简单命令帮您找出答案 [转载]
查看>>
WPF自定义控件与样式(14)-轻量MVVM模式实践
查看>>
HDD-FAT32 ZIP-FAT32
查看>>
当iPhone用上联发科,你还会爱上它吗?
查看>>
HDOJ(HDU) 1491 Octorber 21st
查看>>
ThinkPhp学习05
查看>>
Tomcat内核之ASCII解码的表驱动模式
查看>>
isual Studio 2013编译ImageMagick---转
查看>>
消息字节——MessageBytes
查看>>
送上最新鲜的互联网行业新闻-【2015-05-08】
查看>>