基于JS实现新闻列表无缝向上滚动实例代码


Posted in Javascript onJanuary 22, 2016

当新闻较多,并且空前有限的时候,使用滚动是一个不错的选择,本章节就通过代码实例介绍一下如何实现此效果。

代码实例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="https://3water.com/" />
<title>文字列表无缝向上滚动代码</title>
<style type="text/css">
*{
margin:0px;
padding:0px;
border:0px;
}
body{font-size:12px}
#demo{
overflow:hidden;
height:80px;
width:280px;
margin:90px auto;
position:relative;
}
#demo1{
height:auto;
text-align:left;
}
#demo2{
height:auto;
text-align:left;
}
#demo1 li{
list-style-type:none;
height:22px;
text-align:left;
text-indent:15px;
}
#demo2 li{
list-style-type:none;
height:22px;
text-align:left;
text-indent:15px;
}
</style>
<script type="text/javascript"> 
var speed=40 
window.onload=function(){
var demo=document.getElementById("demo"); 
var demo2=document.getElementById("demo2"); 
var demo1=document.getElementById("demo1"); 
demo2.innerHTML=demo1.innerHTML 
function Marquee(){ 
if(demo.scrollTop>=demo1.offsetHeight){
demo.scrollTop=0; 
}
else{ 
demo.scrollTop=demo.scrollTop+1;
} 
} 
var MyMar=setInterval(Marquee,speed) 
demo.onmouseover=function(){clearInterval(MyMar)} 
demo.onmouseout=function(){MyMar=setInterval(Marquee,speed)} 
}
</script>
</head>
<body>
<div id="demo">
<ul id="demo1">
<li><a href="#" target="_blank">三水点靠木欢迎您的到来</a></li>
<li><a href="#" target="_blank">只有努力才会有美好的明天</a></li>
<li><a href="#" target="_blank">没有人一开始就是高手,都是从菜鸟开始</a></li>
<li><a href="#" target="_blank">每一天都是新的需要好好珍惜</a></li>
<li><a href="#" target="_blank">怨天尤人是没有任何作用的</a></li>
<li><a href="#" target="_blank">今天你写代码了吗</a></li>
<li><a href="#" target="_blank">分享的胸怀和互助的精神最终成就了你</a></li>
</ul>
<div id="demo2"></div>
</div>
</body>
</html>

以上代码实现了新闻列表滚动效果,下面介绍一下实现过程:

一.实现原理:

大致原理如下,demo元素中有两个子元素demo1和demo2,并且将demo1中的内容存入demo2中,之所以这样做,是为了当向上滚动的时候,demo2能够接在demo1的后面,否则将不是无缝滚动,而是有缝滚动了,当demo1的内容完全被遮挡之后,也就是demo1完全滚动上去的时候,demo2会恰好位于demo1开始滚动的位置,然后再重新设置demo的scrollTop值,让滚动就重新来过,这样就实现了无缝滚动效果。

基于JS实现新闻列表无缝向上滚动实例代码就给大家介绍到这里,希望大家根据自己的实际需求应用此段代码。

Javascript 相关文章推荐
style、 currentStyle、 runtimeStyle区别分析
Aug 01 Javascript
AJAX 网页保留浏览器前进后退等功能
Feb 12 Javascript
在jquery中combobox多选的不兼容问题总结
Dec 24 Javascript
node.js中的fs.fchown方法使用说明
Dec 16 Javascript
微信小程序微信支付接入开发实例详解
Apr 12 Javascript
微信小程序中显示html格式内容的方法
Apr 25 Javascript
Easyui在treegrid添加控件的实现方法
Jun 23 Javascript
微信小程序wx.getImageInfo()如何获取图片信息
Jan 26 Javascript
JS中创建自定义类型的常用模式总结【工厂模式,构造函数模式,原型模式,动态原型模式等】
Jan 19 Javascript
微信小程序实现图片上传
May 23 Javascript
JavaScript中this函数使用实例解析
Feb 21 Javascript
elementui实现预览图片组件二次封装
Dec 29 Javascript
jQuery validate插件实现ajax验证重复的2种方法
Jan 22 #Javascript
jQuery禁用键盘后退屏蔽F5刷新及禁用右键单击
Jan 22 #Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
Jan 22 #Javascript
jQuery解析json格式数据简单实例
Jan 22 #Javascript
基于javascript实现根据身份证号码识别性别和年龄
Jan 22 #Javascript
基于jQuery仿淘宝产品图片放大镜特效
Oct 19 #Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
Jan 21 #Javascript
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
destoon之一键登录设置
2014/06/21 PHP
php生成4位数字验证码的实现代码
2015/11/23 PHP
php中的异常和错误浅析
2017/05/03 PHP
学习ExtJS table布局
2009/10/08 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
2011/03/28 Javascript
Array栈方法和队列方法的特点说明
2014/01/24 Javascript
常见的原始JS选择器使用方法总结
2014/04/09 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
2016/09/27 Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
2016/10/26 Javascript
JavaScript中创建对象的7种模式详解
2017/02/21 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
Vue 自定义指令功能完整实例
2019/09/17 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
2020/04/07 Javascript
vue+elementui通用弹窗的实现(新增+编辑)
2021/01/07 Vue.js
JavaScript仿京东轮播图效果
2021/02/25 Javascript
从零学python系列之从文件读取和保存数据
2014/05/23 Python
python实现多线程采集的2个代码例子
2014/07/07 Python
python进阶教程之文本文件的读取和写入
2014/08/29 Python
Python PyQt5实现的简易计算器功能示例
2017/08/23 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
Python3实现的反转单链表算法示例
2019/03/08 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
python生成word合同的实例方法
2021/01/12 Python
CSS3 transition 实现通知消息轮播条
2020/10/14 HTML / CSS
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
某公司的.net工程师面试题笔试题
2013/11/22 面试题
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
中专毕业生自我鉴定
2013/11/21 职场文书
道德大讲堂实施方案
2014/05/14 职场文书
体育教育毕业生自荐信
2014/06/29 职场文书
会员卡清退活动总结
2014/08/27 职场文书
护士求职自荐信
2015/03/25 职场文书
生产车间管理制度
2015/08/04 职场文书
如何使用PyCharm及常用配置详解
2021/06/03 Python