基於js實現逐步顯示文字輸出程式碼例項
阿新 • • 發佈:2020-04-04
今天清理chrome書籤,突然就點到了一個關於 知乎五週年的網頁,這幫程式設計師的腦子真有趣,就算是儲存一年後再看也還是覺得好有趣,下邊是一個截圖圖片描述
這個網頁展示了一個類似ide介面的小視窗,文字逐步輸入,並且還伴隨一些有點炫的css動畫,為個人生成專屬資料。當然這個展示還包括了其他一些資料的傳輸啦,特殊效果(類似觸發一個標籤的js回撥啦),css那個一堆波浪的動畫啦等等一些有意思的,這些暫時不管,我們今天就來看看這個逐步顯示的文字是怎麼做到的,我首先想到的就是做一個簡單的demo
由於沒有讀過這個網頁的原始碼所以不保證思路相同,所以做法很簡單就是:
把一段文字用定時器回顯到網頁上,
最後有一個一閃一閃的遊標,那個是需要單獨拿出來的做一個定時器的,下邊給出程式碼參考:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>逐個顯示</title> <style type="text/css"> #fuck{ visibility:visible; } </style> <body> <div id="content" style="float:left"></div><span id="fuck">|</span> </body> <script type="text/javascript"> window.onload=function(){ //首先要乾的就是:先把後邊的span初始化好 function toggleSpan(){ var HIDspan=document.getElementById("fuck"); HIDspan.style.visibility=(HIDspan.style.visibility=="visible")?"hidden":"visible"; } setInterval(toggleSpan,500); //開始初始化基礎文字 var ocontent=document.getElementById("content"); var str="你猜我們會寫幾個字,不管我寫幾個字反正不會超過一行就對了"; var i=0; var flag=null; function done(){ if(i<str.length){ ocontent.innerHTML=str.substring(0,i+1); i=i+1; } else{ clearInterval(flag); } } flag=setInterval(done,200); } </script> </html>
這樣一個簡單的js控制回顯就完成了,是不是超級簡單? ^V^
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。