js文字升降效果

其实这效果用css3的animation就能办到,不过这里就当熟悉js的操作吧!

效果图如下:

html部分:

<div class="box">
    <div id="shengjiang">
        <p><span color="#ff0">一行文字</span></p>
    </div>
</div>

.box这层div可以不用加,这里只是作为子绝父相的父元素罢了!当然,把游览器作为父元素也可以,只是想镶嵌到其他div中就麻烦了。

css部分:

*{margin: 0;padding: 0;}
        .box{
            position: relative;
            margin: 100px;
            border: 1px solid #ccc;
            width: 200px;
            height: 500px;
        }
        #shengjiang{
            position: absolute;
            color: #000;
        }

如果是css3,就直接换成以下的就好了。

*{margin: 0;padding: 0;}
        .box{
            position: relative;
            margin: 100px;
            border: 1px solid #ccc;
            width: 200px;
            height: 500px;
        }
        #shengjiang{
            position: absolute;
            color: #000;
            animation:mymove 5s infinite;
        }
        @keyframes mymove
            {
                0% {top:0px;}
                50% {top:200px;}
                100%{top: 0px;}
            }

animation,css3的动画属性

mymove 定义的名称,可自定义。

5s 一次需要的时间

infinite 循环反复

@keyframes mymove 给上面定义的名称添加动画属性。

    即0%时所在位置,50%时所在位置,100%时所在位置。

    0-100%之间可任意分隔。

top 是从0到200px再回到0;

js部分,虽说到这里就已经达成效果了说……

    var step = 4;
        function anim(x,y){    //x为最等端,y为最底端
            document.all["shengjiang"].style.top=x+"px";    //初始顶端位置
            if (x>=y) {
                step = -4;    //达到最底端时为负值,其数值表示每一次执行setTimeout时,移动的像素减少4像素,数值越大,移动的距离也就越大。每次调用时也就显得越快。
            }
            if (x<0) {    //这行的零所代表的,居然是与显示窗口(子绝父相的父级)相对高度
                step = 4;    //如果到达指定高度时,数值为正,即加大参数向下移动
            }
            setTimeout(‘anim(‘+(x+step)+‘,‘+y+‘)‘, 35);    //等待多少秒执行,所以数值越小速度就越快
            //
        }
        anim(5,200);//5只是初始位置,200才是整体的高度,至于如何确认最顶端,还要看if (x<0) {step = 4;}中的x<0中的0这个数值。

原文地址:https://www.cnblogs.com/yinwangyizhi/p/9461028.html

时间: 2024-08-30 16:26:55

js文字升降效果的相关文章

JS文字翻滚效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

js文字滚动效果实现

<!doctype html> <html> <head> <meta charset="utf-8"> <title>字幕横向滚动</title> <script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script> <style> ul,li{ margin: 0; padding

js文字滚动效果

function (global) { var logo = document.getElementById('logo'); var text = document.createTextNode(''); logo.appendChild(text); var str = "Welcome to FoOTOo Lab"; var timer = setInterval(writer, 100); var count = 0; function writer() { if (count

JS 黑客帝国文字下落效果

黑客帝国文字下落效果 源代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>黑客帝国文字下落</title> <style> html, body {margin:0; padding:0; background-color:#000;} #divList {width:800px; height:500px; border

像歌词跟着声音走的JS文字效果

一个比较不错的文字显示特效,像MTV的歌词显示一样跟着演唱者慢慢逐个清淅显示,这段特效代码就实现了和这个功能差不多,而且JS代码非常少,兼容性好,点击运行看看效果吧! <html> <head> <title>石家庄花卉</title> </head> <body> <script language="JavaScript"> var message="像歌词显示一样JS文字效果!"

鼠标悬浮于链接之上出现文字说明效果

鼠标悬浮于链接之上出现文字说明效果:对于超链接<a>标签,有一个title属性,当鼠标表悬浮于链接之上时候,就会显示title的属性值,虽然在一定程度上满足了我们的需要,但是美观度却似差强人意,同时无法修改它的样式,下面就来介绍一下如何利用jquery模拟实现此功能.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="a

jQuery实现的简单文字提示效果模拟title(转)

来源 http://www.cnblogs.com/puzi0315/archive/2012/10/17/2727693.html 模拟title实现效果,可以修改文字的样式,换行等. 文件下载: 先看下效果截图: 代码分析: <!-- 引用jQuery --> <script src="jquery.js" type="text/javascript"></script> <style type="text/c

js文字颜色闪烁

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

css3仿制js的弹力效果

使用css3技术仿制的JavaScript弹力效果,其实做这个效果和Js的原理是一样的:就是控制位置和时间,但是不同的是css用transform的translate来控制,其实现的最终是transition. <!DOCTYPE HTML> <html lang="en-US"> <head> <title>潜水射流曝气机</title> </head> <body> <style type=&