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简化Ajax开发 Ajax开发入门
Oct 14 Javascript
JS 控制非法字符的输入代码
Dec 04 Javascript
js实现翻页后保持checkbox选中状态的实现方法
Nov 03 Javascript
js写一个弹出层并锁屏效果实现代码
Dec 07 Javascript
node文件上传功能简易实现代码
Jun 16 Javascript
JavaScript实现为事件句柄绑定监听函数的方法分析
Nov 14 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
May 16 Javascript
webpack4 升级迁移的实现
Sep 12 Javascript
node.js调用C++函数的方法示例
Sep 21 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
May 07 Javascript
Flutter实现仿微信底部菜单栏功能
Sep 18 Javascript
js实现旋转的星空效果
Nov 01 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的输入输出流
2007/02/14 PHP
php date()日期时间函数详解
2010/05/16 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
BOOM vs RR BO3 第一场2.13
2021/03/10 DOTA
实例:尽可能写友好的Javascript代码
2006/10/09 Javascript
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
jQuery+.net实现浏览更多内容(改编php版本)
2013/03/28 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
JavaScript简单判断复选框是否选中及取出值的方法
2015/08/13 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
手机软键盘弹出时影响布局的解决方法
2016/12/15 Javascript
基于JavaScript中字符串的match与replace方法(详解)
2017/12/04 Javascript
JavaScript的Object.defineProperty详解
2018/07/09 Javascript
jQuery 常用特效实例小结【显示与隐藏、淡入淡出、滑动、动画等】
2020/05/19 jQuery
[36:43]NB vs Optic 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
Python3基础之基本运算符概述
2014/08/13 Python
详解python编译器和解释器的区别
2019/06/24 Python
Python文件操作中进行字符串替换的方法(保存到新文件/当前文件)
2019/06/28 Python
Django缓存系统实现过程解析
2019/08/02 Python
python3 深浅copy对比详解
2019/08/12 Python
Django认证系统实现的web页面实现代码
2019/08/12 Python
python os模块在系统管理中的应用
2020/06/22 Python
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
Kaufmann Mercantile官网:家居装饰、配件、户外及更多
2018/09/28 全球购物
购买正版游戏和游戏激活码:Green Man Gaming
2019/11/06 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
机械个人求职信范文
2014/01/24 职场文书
石油大学毕业生自荐信
2014/01/28 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
企业标语口号
2014/06/10 职场文书
财会专业毕业生自荐信
2014/07/09 职场文书
纪念九一八事变演讲稿:牢记九一八,屈辱怎能忘
2014/09/14 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
2016年寒假见闻
2015/10/10 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android