javascript实现左右控制无缝滚动


Posted in Javascript onDecember 31, 2014

无缝滚动是项目中经常需要用到的一种特效,网上也有很多的示例代码,这里给大家分享的是一段比较简单实用的,而且兼容性也不错的代码,小伙伴们仔细研究下吧。

html 代码:

<</SPAN>html>

<</SPAN>head lang="en">

    <</SPAN>meta charset="UTF-8">

    <</SPAN>title>无缝滚动</</SPAN>title>

    <</SPAN>script src="js/0010.js"></</SPAN>script>

    <</SPAN>link rel="stylesheet" type="text/css" href="css/0010.css" />

</</SPAN>head>

<</SPAN>body>

   <</SPAN>a href="javascript:">向左走</</SPAN>a>

   <</SPAN>a href="javascript:">向右走</</SPAN>a>

   <</SPAN>div id="div1">

       <</SPAN>ul>

           <</SPAN>li><</SPAN>img src="image/1.jpg"></</SPAN>li>

           <</SPAN>li><</SPAN>img src="image/2.jpg"></</SPAN>li>

           <</SPAN>li><</SPAN>img src="image/3.jpg"></</SPAN>li>

           <</SPAN>li><</SPAN>img src="image/4.jpg"></</SPAN>li>

       </</SPAN>ul>

   </</SPAN>div>

</</SPAN>body>

</</SPAN>html>

CSS代码

*{

    margin:0;

    padding: 0;

}

#div1{

    overflow: hidden;

    background: blue;

    position: relative;

    width: 600px;

    height: 150px;

    margin:100px auto;

}

#div1 ul{

    position: absolute;

    left: 0px;

    top: 0px;

    list-style: none;

}

#div1 ul li{

    float: left;

}

#div1 ul li img{

    width:150px;

    height:150px;

}

js:代码

window.onload=function(){

    var oDiv=document.getElementById('div1');

    var oUl=oDiv.getElementsByTagName('ul')[0];

    var aLi=oUl.getElementsByTagName('li');

    var timer=null;

    var speed=2;//控制滚动速度以及方向

    oUl.innerHTML=oUl.innerHTML+oUl.innerHTML;

    oUl.style.width=aLi[0].offsetWidth*aLi.length+'px';

    timer=setInterval(move,30);

    oDiv.onmouseover=function(){//鼠标移入暂定

        clearInterval(timer);

    };

    oDiv.onmouseout=function(){//鼠标移出继续滚动

        timer=setInterval(move,30);

    }

    document.getElementsByTagName('a')[0].onclick=function(){

        speed=-2;

    }

    document.getElementsByTagName('a')[1].onclick=function(){

        speed=2;

    }

    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';

    }

}

效果是不是非常棒呢。

Javascript 相关文章推荐
『jQuery』取指定url格式及分割函数应用
Apr 22 Javascript
JS 获取select(多选下拉)中所选值的示例代码
Aug 02 Javascript
js验证整数加保留小数点的简单实例
Dec 02 Javascript
jQuery选择器源码解读(八):addCombinator函数
Mar 31 Javascript
javascript单页面手势滑屏切换原理详解
Mar 21 Javascript
JS表格组件神器bootstrap table使用指南详解
Apr 12 Javascript
JS触摸与手势事件详解
May 09 Javascript
利用Angular2 + Ionic3开发IOS应用实例教程
Jan 15 Javascript
angular实现input输入监听的示例
Aug 31 Javascript
CSS3 动画卡顿性能优化的完美解决方案
Sep 20 Javascript
详解Typescript 内置的模块导入兼容方式
May 31 Javascript
js闭包的9个使用场景
Dec 29 Javascript
javascript比较两个日期的先后示例代码
Dec 31 #Javascript
jQuery中[attribute*=value]选择器用法实例
Dec 31 #Javascript
jQuery中[attribute^=value]选择器用法实例
Dec 31 #Javascript
jQuery中[attribute=value]选择器用法实例
Dec 31 #Javascript
修复bash漏洞的shell脚本分享
Dec 31 #Javascript
分享一个常用的javascript静态类
Dec 31 #Javascript
兼容Firefox的Javascript XSLT 处理XML文件
Dec 31 #Javascript
You might like
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
WordPress中is_singular()函数简介
2015/02/05 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
php基于dom实现读取图书xml格式数据的方法
2017/02/03 PHP
北京奥运官方网站幻灯切换效果flash版打包下载
2008/01/30 Javascript
通过修改referer下载文件的方法
2008/05/11 Javascript
jquery BS,dialog控件自适应大小
2009/07/06 Javascript
基于Jquery的简单图片切换效果
2011/01/06 Javascript
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
javascript实现焦点滚动图效果 具体方法
2013/06/24 Javascript
jQuery下实现等待指定元素加载完毕(可改成纯js版)
2013/07/11 Javascript
js捕获鼠标滚轮事件代码
2013/12/16 Javascript
javascript 操作符(~、&amp;、|、^、)使用案例
2014/12/31 Javascript
JavaScript中的比较操作符&gt;、=、
2014/12/31 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
jQuery+SpringMVC中的复选框选择与传值实例
2018/01/08 jQuery
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
微信小程序实现省市区三级地址选择
2020/06/21 Javascript
jQuery分组选择器简单用法示例
2019/04/04 jQuery
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
python操作MySQL 模拟简单银行转账操作
2017/09/27 Python
快速查询Python文档方法分享
2017/12/27 Python
Python切片操作深入详解
2018/07/27 Python
python3.6数独问题的解决
2019/01/21 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
关于Python-faker的函数效果一览
2019/11/28 Python
美国益智玩具购物网站:Fat Brain Toys
2017/11/03 全球购物
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
我的动漫时代的创业计划书范文
2014/01/27 职场文书
2014年三万活动总结
2014/04/26 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
中班上学期个人总结
2015/02/12 职场文书
PHP策略模式写法
2021/04/01 PHP
python自动计算图像数据集的RGB均值
2021/06/18 Python