首頁 > web前端 > js教程 > JavaScript模擬打字效果

JavaScript模擬打字效果

高洛峰
發布: 2016-11-28 14:03:26
原創
1487 人瀏覽過

JavaScript可以模擬打字效果,很有創意的一個小腳本,可以用作404頁面,當然也可以用在很多地方。先把需要列印的字串預先保存到一個數組當中,然後利用setTimeout()方法每個一小段時間輸出一個字符,連串起來就像打字一樣的效果。


Code

<script type="text/javascript">
<!--
var tl = new Array(
    "I am so sorry, but I can&#39;t find the Page you&#39;ve requested.",
    "It&#39;s possible that you entered the address incorrectly.",
    "If you did enter the address correctly, then it must be my fault.",
    "I am really, really sorry, but I&#39;ve tried everything I know to find it.",
    "Nothing helped.",
    "I am really depressed about this.",
    "You see, I&#39;m just a web server...",
    "...here I am, brain the size of the universe, trying to serve you a simple web page...",
    "And then it doesn&#39;t even exist!",
    "Where does that leave me?!",
    "I mean, I don&#39;t even know you.",
    "How should I know what you wanted from me?",
    "You honestly think I can &#39;guess&#39; what someone I don&#39;t even &#39;know&#39; wants to find here?",
    "",
    "Maybe I should introduce myself... my name is Marvin.",
    "But then again, what is the use of intruducing myself?",
    "You can&#39;t tell me your name, because you are in some far off place, sitting in front of your computer.",
    "And that makes me feel lonely.",
    "Do you know what that is like?",
    "",
    "...sigh...",
    "",
    "Man, I am so depressed I could just cry.",
    "And then where would we be, I ask you?",
    "It&#39;s not pretty when a web server cries.",
    "And where do you get off telling me what to show anyway?",
    "I&#39;m just a web server...",
    "...and possibly a manic depressive one at that...",
    "So why does that give you the right to tell me what to do?",
    "Huh?",
    "",
    "I am so depressed...",
    "I think I&#39;ll crawl off into the trash can and decompose.",
    "I mean, I&#39;m gonna be obsolete in what, two weeks anyway?",
    "What kind of a life is that?",
    "Two effing weeks...",
    "...and then I&#39;ll be replaced by a .01 release, that thinks it&#39;s God&#39;s gift to web servers,",
    "just because it doesn&#39;t have some tiddly little security hole with its HTTP POST implementation,",
    "or something like that.",
    "",
    "I&#39;m really sorry to burden you with all this,",
    "I mean, it&#39;s not your job to listen to my problems,",
    "and I guess it is my job to go and fetch web pages for you.",
    "But I couldn&#39;t get this one.",
    "I am so sorry.",
    "Believe me!",
    "",
    "Maybe I could interest you in another page?",
    "There are a lot out there that are pretty neat, they say,",
    "although none of them were put on &#39;my&#39; server, of course.",
    "Figures, huh?",
    "That makes me depressed too, since I have to serve them, all day and all night long.",
    "Two weeks of information overload, and then *pffftt*, consigned to the trash.",
    "Again I ask you, what kind of a life is that?",
    "",
    "Now, please let me sulk alone.",
    "",
    "",
    "",
    "",
    "I am so depressed.",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "<connection terminated>"
);
var speed = 50;
var index = 0; 
text_pos = 0;
var str_length = tl[0].length;
var contents, row;
  
function type_text()
{
    contents=&#39;&#39;;
    row = Math.max(0,index-7);
    while(row < index)
    {
        contents += tl[row++] + &#39;\r\n&#39;;
    }
    //document.forms[0].elements[0].value = contents + tl[index].substring(0,text_pos) + "_";
    document.getElementById("typearea").value = contents + tl[index].substring(0,text_pos) + "_";
    if(text_pos++==str_length)
    {
        text_pos=0;
        index++;
        if(index!=tl.length)
        {
            str_length=tl[index].length;
            setTimeout("type_text()",1500);
        }
    } 
    else
        setTimeout("type_text()",speed);
}
//-->
</script> 
      
<form> 
    <textarea id="typearea" rows="20" cols="100" style="font-family:Arial; font-size:14px; "></textarea> 
</form> 
<script type="text/javascript">type_text();</script>
登入後複製


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板