这段代码怎么样? (Javascript Asciimation)

时间:2014-05-30 20:04:28

标签: javascript ascii

我在网上发现了这个代码,用javascript制作ascii动画。我不想只使用它,而是要了解它发生了什么。我唯一无法理解的是为什么它通过使用" + a +来跳线,为什么会这样?非常感谢!

<html>
<head>
<title>your title here</title>
</head>
<body bgcolor="#fff6e9" text="#660000" link="#3366cc" alink="llizard" 
vlink="#333399" onload="tick()">

<b>bird singing</b> --ejm98

<script type="text/javascript" language="javascript">
<!-- hide from older browsers
    var agt=navigator.userAgent.toLowerCase();
    if (agt.indexOf("mac") != -1) { var a="\r"; } else { var a="\n"; }
    var max=0;
    function tlist(){ max=tlist.arguments.length;
        for(i=0;i<max;i++) this[i]=tlist.arguments[i];
    }

    tl = new tlist(

" "+a+
"  \<\") "+a+
"   ( \>\\ "+a+
"    \" \\\\ "+a+
"       \\  ejm"+a,

"              "+a+
"  \>\")       "+a+
"   ( \>\\     "+a+
"    \" \\\\   "+a+
"       \\  ejm"+a

    );
    var x=0;
    function tick() {
        document.f.t.value=tl[x];
        x++; if(x==max) x=0;
        //if(confirm('continue?'))
            setTimeout("tick()",70);
    }
    // end-->

</script>

<form name="f" action="self"><textarea name="t" rows="6" cols="15">
</textarea> </form>

<p><b>to <a href="http://llizard.cwahi.net/ascii-animations/">
llizard's Javascript ASCII-animations</a></b></p>

</body>
</html>

1 个答案:

答案 0 :(得分:2)

a是一个变量,分配一个return \ r \ n或一个换行符\ n,具体取决于系统。

 if (agt.indexOf("mac") != -1) { var a="\r"; } else { var a="\n"; }