javascript实现无缝上下滚动特效


Posted in Javascript onDecember 16, 2015

本文实例讲解了javascript实现无缝上下滚动的代码,分享给大家供大家参考,具体内容如下

js实现上下无缝滚动的原理是这样的:
1、首先给容器设定高度或宽度,然后overflow:hidden;
2、容器高度设定后,内容超出则被隐藏。
3、改变容器的scrollTop(上下滚动)属性的值,让内容上下移动一个节点的位置(滚动的原理);
4、到滚动的高度scrollTop大于或等于要滚动节点的高度时,设置scrollTop=0,并把把子节点树中的第一个移动到最后,重新开始滚动,无间断循环滚动效果就出现了。

效果图如下:

javascript实现无缝上下滚动特效

代码如下:

<div id="colee" style="overflow:hidden;height:100px;width:410px;border:1px solid red;">
<div id="colee1">
<p>php</p>
<p>java</p>
<p>ruby</p>
<p>python</p>
<p>www.phpddt.com</p>
</div>
<div id="colee2"></div>
</div>
<script>
//速度设置
var speed=1;
var colee2=document.getElementById("colee2");
var colee1=document.getElementById("colee1");
var colee=document.getElementById("colee");
colee2.innerHTML=colee1.innerHTML; //克隆colee1为colee2
function Marquee1(){
//当滚动至colee1与colee2交界时
if(colee2.offsetTop-colee.scrollTop<=0){
 colee.scrollTop-=colee1.offsetHeight; //colee跳到最顶端
 }else{
 colee.scrollTop++
}
}
var MyMar1=setInterval(Marquee1,speed)//设置定时器
//鼠标移上时清除定时器达到滚动停止的目的
colee.onmouseover=function() {clearInterval(MyMar1)}
//鼠标移开时重设定时器
colee.onmouseout=function(){MyMar1=setInterval(Marquee1,speed)}
</script>

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

Javascript 相关文章推荐
基于jquery的页面划词搜索JS
Sep 14 Javascript
js判断字符长度及中英文数字等
Mar 19 Javascript
JavaScript实现存储HTML字符串示例
Apr 21 Javascript
扒一扒JavaScript 预解释
Jan 28 Javascript
Bootstrap 粘页脚效果
Mar 28 Javascript
深入浅析javascript中的作用域(推荐)
Jul 19 Javascript
浅谈jquery中使用canvas的问题
Oct 10 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
Oct 27 Javascript
React组件的三种写法总结
Jan 12 Javascript
vue.js全局API之nextTick全面解析
Jul 07 Javascript
vue文件运行的方法教学
Feb 12 Javascript
学习node.js 断言的使用详解
Mar 18 Javascript
js实现将选中内容分享到新浪或腾讯微博
Dec 16 #Javascript
JavaScript运行过程中的“预编译阶段”和“执行阶段”
Dec 16 #Javascript
Sublime Text 3常用插件及安装方法
Dec 16 #Javascript
基于MVC4+EasyUI的Web开发框架形成之旅之界面控件的使用
Dec 16 #Javascript
基于JavaScript获取鼠标位置的各种方法
Dec 16 #Javascript
javascript基于prototype实现类似OOP继承的方法
Dec 16 #Javascript
javascript数组克隆简单实现方法
Dec 16 #Javascript
You might like
php上的memcache和memcached两个pecl库
2010/03/29 PHP
PHP STRING 陷阱原理说明
2010/07/24 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
PHP中常见的密码处理方式和建议总结
2018/10/14 PHP
判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
2013/11/07 Javascript
10分钟学会写Jquery插件实例教程
2014/09/06 Javascript
JS实现带鼠标效果的头像及文章列表代码
2015/09/27 Javascript
深入理解js数组的sort排序
2016/05/28 Javascript
Vue.js表单控件实践
2016/10/27 Javascript
如何解决vue与传统jquery插件冲突
2017/03/20 Javascript
简单谈谈axios中的get,post方法
2017/06/25 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
Vue页面骨架屏注入方法
2018/05/13 Javascript
jQuery实现动态加载select下拉列表项功能示例
2018/05/31 jQuery
AJAX在JQuery中的应用详解
2019/01/30 jQuery
浅谈JavaScript闭包
2019/04/09 Javascript
详解Element-UI中上传的文件前端处理
2019/08/07 Javascript
vue2.x数组劫持原理的实现
2020/04/19 Javascript
[02:42]DOTA2城市挑战赛收官在即 四强之争风起云涌
2018/06/05 DOTA
利用python爬取软考试题之ip自动代理
2017/03/28 Python
python脚本替换指定行实现步骤
2017/07/11 Python
Python装饰器用法示例小结
2018/02/11 Python
Python+selenium 获取浏览器窗口坐标、句柄的方法
2018/10/14 Python
python调用自定义函数的实例操作
2019/06/26 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
python正则表达式re.match()匹配多个字符方法的实现
2021/01/27 Python
override和overload的区别
2016/03/09 面试题
个人教师自我评价范文
2013/12/02 职场文书
12岁生日演讲稿
2014/05/14 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
感恩母亲节活动总结
2015/02/10 职场文书
学校端午节活动总结
2015/02/11 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
2015中秋祝酒词
2015/08/12 职场文书
请假条应该怎么写?
2019/06/24 职场文书
nginx访问报403错误的几种情况详解
2022/07/23 Servers