Web前端——信息滚动marquee

一、<marquee>标签基础知识

<marquee>标签是用来做滚动效果的标签,随着html5的大量使用,<marquee>应用越来越少
<marquee>标签的五种属性
1、behavior 滚动的方式
alternate在两端间来回滚动
scroll从一端滚到另一端,重复执行a->b,a->b,a->b.......
slide从一端滚到另一端,停止
2、direction 滚动方向 down up left right
3、loop 滚动次数,默认是-1,无限期滚动
4、scrollamount 设置活动字幕的滚动速度
5、scrolldelay 两次滚动之间的时间间隔
6、常用方法onmouseover="this.stop();" onmouseout="this.start();"鼠标放上停止,移开继续,stop()和start()是系统方法,所以我们可以直接调用

二、滚动简单效果

<title>HTML文字滚动效果</title>
<style>
*{
    margin:0;
    padding:0;
}
.box{
    width:500px;
    border:3px solid #ccc;
    margin:50px auto 0;
    padding:10px;
}
dl,dt{
        list-style:none;
}
dl dt{
    line-height:24px;
    font-size:16px;
    font-weight:bold;
    color:#000;
 }
</style>
</head>
<body>
<div class="box">
<dl>
  <dt>文字滚动示例(默认):</dt>
 // onmouseover="this.stop();" onmouseout="this.start();"鼠标放上停止,移开继续,stop()和start()是系统方法
  <dd><marquee onmouseover="this.stop();" onmouseout="this.start();">我默认向左滚。。。。。</marquee></dd>
</dl>
<dl>
  <dt>文字滚动示例(向右):</dt>
  <dd><marquee direction="right" scrolldelay="50">我向右滚动。。。。</marquee></dd>
</dl>
<dl>
  <dt>文字滚动示例(默认方向,滚动方式为alternate,循环3次,速度为2):</dt>
  <dd><marquee scrollamount="2" behavior="alternate" loop="3">我来回滚动。。。。    </marquee></dd>
</dl>
<dl>
  <dt>文字滚动示例(向上,背景色为#CCFF66,设置了背景宽度和高度):</dt>
  <dd><marquee direction="up"  bgcolor="#CCFF66" width="250" height="55">我在区域内滚动,向上哟。。。。</marquee></dd>
</dl>

</div>
</body>

三、无缝滚动

基础知识点
1、innerHTML
con2.innerHTML = con1.innerHTML;//让con2复制con1内容,con2的存在是为了填补空白
2、setInterval
3、clearInterval
4、scrollTop
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 (即网页被卷去的高)
5、offsetHeight

<body>
<!--  慕课网课程公告开始 -->
<div  id="mooc"> 
<!--  头部 -->
<h3 id="moocTitle">最新课程<a href="#" target="_self">更多>></a> </h3>
<!--  头部结束 --> 
<!--  中间 -->
<div  id="moocBox">
    <ul id="con1">
        <li><a href="#">1.学会html5 绝对的屌丝逆袭(案例)</a><span>2013-09-18</span></li>
        <li><a href="#">2.tab页面切换效果(案例)</a><span>2013-10-09</span></li>
        <li><a href="#">3.圆角水晶按钮制作(案例)</a><span>2013-10-21</span></li>
        <li><a href="#">4.HTML+CSS基础课程(系列)</a><span>2013-11-01</span></li>
        <li><a href="#">5.分页页码制作(案例)</a><span>2013-11-06</span></li>
        <li><a href="#">6.导航条菜单的制作(案例)</a><span>2013-11-08</span></li>
        <li><a href="#">7.信息列表制作(案例)</a><span>2013-11-15</span></li>
        <li><a href="#">8.下拉菜单制作(案例)</a><span>2013-11-22</span></li>
        <li><a href="#">9.如何实现“新手引导”效果</a><span>2013-12-06</span></li>
    </ul>
    <ul id="con2">
    </ul>
</div>
<!--  中间结束 --> 
</div>
<!--  慕课网课程公告结束 --> 

<script type="text/javascript">
 var area = document.getElementById('moocBox');
 var con1 = document.getElementById('con1');
 var con2 = document.getElementById('con2');
 var speed = 50;
 area.scrollTop = 0;
 con2.innerHTML = con1.innerHTML;//让con2复制con1内容,con2的存在是为了填补空白
 function scrollUp(){
    // 当area的滚动高度和con1.scrollHeight高度相等时,回到初始高度;如果没有,继续++
     if(area.scrollTop >= con1.scrollHeight) {
         area.scrollTop = 0;
         }else{
           area.scrollTop ++; //
         } 
}
var myScroll = setInterval("scrollUp()",speed);
// 移入移除效果
// 鼠标滑过,停止滑动,停止定时器
// 鼠标移除,继续滑动,启动定时器
area.onmouseover = function(){
     clearInterval(myScroll);
    }
area.onmouseout = function(){
    // setInterval第一个参数可以是函数也可以是表达式,第二个事件间隔
     myScroll = setInterval("scrollUp()",speed);
    }
 </script>
</body>
</html>
屏幕录制.gif

四、单行滚动

setTimeout(表达式,延迟时间)执行时,在载入后,延迟一段时间(以毫秒计)后,执行表达式,只执行一次
setInterval(表达式,交互时间)每隔一个指定时间(以毫秒计),执行一次表达式,循环执行直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

<script type="text/javascript">
 var area = document.getElementById('moocBox');
 var iliHeight = 24;//单行滚动的高度
 var speed = 50;//滚动的速度50毫秒
 var time;
 var delay= 2000;//延迟时间两秒
 area.scrollTop=0;
 area.innerHTML+=area.innerHTML;//克隆一份一样的内容
 function startScroll(){
     time=setInterval("scrollUp()",speed);
     area.scrollTop++;
     }
 function scrollUp(){
    // 当滚动整一行时,清除定时器,然后延时两秒再继续执行
     if(area.scrollTop % iliHeight==0){
         clearInterval(time);
         setTimeout(startScroll,delay);
         }else{
             area.scrollTop++;
             if(area.scrollTop >= area.scrollHeight/2){
                     area.scrollTop =0;
                     }
                 }
     }
     setTimeout(startScroll,delay)
 </script>

其他情况:
1、通过设置滚动高度var iliHeight = 24;可以显示,一次滚动几行。
2、通过设置moocBox这个div的css样式,可以更改,显示的行数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,783评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,360评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,942评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,507评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,324评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,299评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,685评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,358评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,652评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,704评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,465评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,318评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,711评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,991评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,265评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,661评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,864评论 2 335

推荐阅读更多精彩内容

  • bug修复版2017.07.11 js替代marquee实现图片无缝滚动可能大家都碰到过,当marquee中滚动的...
    巩小白阅读 676评论 0 4
  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 3,210评论 1 41
  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 2,749评论 0 8
  • 1. tab列表折叠效果 html: 能源系统事业部 岗位名称: 工作地点 岗位名...
    lilyping阅读 1,802评论 0 1
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,709评论 1 92