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 相关文章推荐
用js模拟JQuery的show与hide动画函数代码
Sep 20 Javascript
关于jQuery UI 使用心得及技巧
Oct 10 Javascript
js调用webservice中的方法实现思路及代码
Feb 25 Javascript
js实现一个省市区三级联动选择框代码分享
Mar 06 Javascript
js中apply方法的使用详细解析
Nov 04 Javascript
jQuery表单验证功能实例
Aug 28 Javascript
详解JavaScript中Hash Map映射结构的实现
May 21 Javascript
Jquery中.bind()、.live()、.delegate()和.on()之间的区别详解
Aug 01 jQuery
Vue.js用法详解
Nov 13 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
Sep 13 Javascript
vue中添加与删除关键字搜索功能
Oct 12 Javascript
JavaScript提升机制Hoisting详解
Oct 23 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
PHP提取中文首字母
2008/04/09 PHP
PHP基于文件存储实现缓存的方法
2015/07/20 PHP
PHP上传文件参考配置大文件上传
2015/12/16 PHP
PHP多进程编程总结(推荐)
2016/07/18 PHP
thinkphp jquery实现图片上传和预览效果
2020/07/22 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
对laravel的session获取与存取方法详解
2019/10/08 PHP
javascript eval和JSON之间的联系
2009/12/31 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
解释&amp;&amp;和||在javascript中的另类用法
2014/07/28 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
2020/03/26 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
微信小程序实现运动步数排行功能(可删除)
2018/07/05 Javascript
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
微信小程序用户信息encryptedData详解
2018/08/24 Javascript
JavaScript多种页面刷新方法小结
2019/04/04 Javascript
自定义Vue组件打包、发布到npm及使用教程
2019/05/22 Javascript
vue中@change兼容问题详解
2019/10/25 Javascript
angular8和ngrx8结合使用的步骤介绍
2019/12/01 Javascript
利用PHP实现递归删除链表元素的方法示例
2020/10/23 Javascript
分享Python文本生成二维码实例
2016/01/06 Python
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
如何搭建pytorch环境的方法步骤
2020/05/06 Python
巧用CSS3 border实现图片遮罩效果代码
2012/04/09 HTML / CSS
Nili Lotan官网:Nili Lotan同名品牌
2018/01/07 全球购物
澳大利亚领先的皮肤诊所:Skin Matrix(抗衰老、痤疮专家、药妆护肤)
2018/05/20 全球购物
企业新年寄语
2014/04/04 职场文书
团日活动总结书
2014/05/08 职场文书
教导主任竞聘演讲稿
2014/05/16 职场文书
2014年体育教学工作总结
2014/12/09 职场文书
党支部书记岗位职责
2015/02/15 职场文书
html+css 实现简易导航栏功能
2021/04/07 HTML / CSS
CSS3 制作的图片滚动效果
2021/04/14 HTML / CSS
《月歌。》宣布制作10周年纪念剧场版《RABBITS KINGDOM THE MOVIE》
2022/04/02 日漫