由于最近网站需要使用文字翻滚的效果,因为marquee不是w3c标准标签,并且滚动时会出现一段时间的空白,因此使用下面的javascript脚本实现翻滚效果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>demo6</title>
<style type="text/css">
ul,li{margin:0;padding:0;font-size:12px;color:#999;}
ul{height:100px;overflow:hidden;}
ul li{line-height:20px;height:20px;}
</style>
</head>
<body>
<ul id="list">
<li>“卧槽泥马”:又一网络新词1</li>
<li>“卧槽泥马”:又一网络新词2</li>
<li>“卧槽泥马”:又一网络新词3</li>
<li>“卧槽泥马”:又一网络新词4</li>
<li>“卧槽泥马”:又一网络新词5</li>
<li>“卧槽泥马”:又一网络新词6</li>
<li>“卧槽泥马”:又一网络新词7</li>
<li>“卧槽泥马”:又一网络新词8</li>
<li>“卧槽泥马”:又一网络新词9</li>
<li>“卧槽泥马”:又一网络新词10</li>
<li>“卧槽泥马”:又一网络新词11</li>
<li>“卧槽泥马”:又一网络新词12</li>
<li>“卧槽泥马”:又一网络新词13</li>
<li>“卧槽泥马”:又一网络新词14</li>
</ul>
<script type="text/javascript">
function scroll(element, delay, speed, lineHeight) {
var numpergroup = 5;
var slideBox = (typeof element == 'string')?document.getElementById(element):element;
var delay = delay||1000;
var speed=speed||20;
var lineHeight = lineHeight||20;
var tid = null, pause = false;
var liLength = slideBox.getElementsByTagName('li').length;
var lack = numpergroup-liLength%numpergroup;
for(i=0;i<lack;i++){
slideBox.appendChild(document.createElement("li"));
}
var start = function() {
tid=setInterval(slide, speed);
}
var slide = function() {
if (pause) return;
slideBox.scrollTop += 2;
if ( slideBox.scrollTop % lineHeight == 0 ) {
clearInterval(tid);
for(i=0;i<numpergroup;i++){
slideBox.appendChild(slideBox.getElementsByTagName('li')[0]);
}
slideBox.scrollTop = 0;
setTimeout(start, delay);
}
}
slideBox.onmouseover=function(){pause=true;}
slideBox.onmouseout=function(){pause=false;}
setTimeout(start, delay);
}
scroll('list', 5000, 1, 20 );//停留时间,相对速度(越小越快),每次滚动多少,最好和Li的Line-height一致。
</script>
</body>
</html>
分享到:
相关推荐
用Javascript来实现Marquee效果
HTML标签marquee实现滚动效果,实现文字在网页中漂移的代码。
由于marquee标签现在用得是越来越少了,所以滚动效果的做法大多也都改用javascript来实现了之所以抛弃marquee是因为marquee是一个严重影响用户体验的东西,你把数十行内容压缩到几行滚动的确帮助你压缩了排版空间,...
鄙人上传的此脚本(含Demo)是一个Marquee类,开放了几个接口轻松实现滚动的方向、延时、尺寸等参数的设置,对从事网页前端开发的设计人员有很大的好处。需要注意的地方就是:table的width要大于外框的width(呵呵,...
juqery实现marquee的效果,手机端也可以使用,不卡顿
js仿marquee标签的走马灯效果
MARQUEE属性与用法,能实现无缝循环滚动文字,上下,左右都可以
marquee效果
使用js实现了ie的marquee标签滚动功能, 使之能兼容FF,ie 并修正了纯中文横向滚动时的bug..
主要介绍了JS与HTML结合使用marquee标签实现无缝滚动效果代码的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
marquee标签实例
用javascript代替marquee的滚动字幕效果代码
用javascript模拟marquee实现滚动
<marquee>标签,它是成对出现的标签,首标签<marquee>和尾标签</marquee>之间的内容就是滚动内容。...但无意中发现了一个html标签——<marquee></marquee>可以实现多种滚动效果,无需js控制。使用marqu
Marquee配合DIV实现符合标准的文字滚动
Marquee标签一直以来都被W3C排斥,而且,屁股后老带着段空白,这个是最让人恼火的... JS替代Marquee网上也有不少例子,可基本上都是单个实例,不支持多个,修改起来又麻烦,而且各个浏览器的兼容性也不是很好。所以...
公告滚动动画,从右到左滚动,marquee标签效果
无间断滚动的新闻文章列表,兼容IE、Firefox和Opera,符合W3C标准。可作Marquee
页面的自动滚动效果,可由javascript来实现,但是今天无意中发现了一个html标签 – <marquee></marquee>可以实现多种滚动效果,无需js控制。 使用marquee标记不仅可以移动文字,也可以移动图片,表格等. 语法:...