javascript能夠回溯的打字機效果程式碼例項
本章節分享一段程式碼例項,它實現了打字機效果。
當打字完畢之後,還能夠回溯到最初狀態。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script type="text/javascript"> window.onload=function(){ var i = 1, j = 1, html = ''; var timer = setInterval(add, 100); function add() { if (i <= 9) { if (j < i) { html = '<span>' + j + '*' + i + '=' + j * i + '</span>' + ' '; } else if (j === i) { html = '<span>' + j + '*' + i + '=' + j * i + '</span><br/>'; i++; j = 0; } j++; document.write(html); } else if (i === 10) { var span = document.getElementsByTagName('span'); if (span.length > 0) { span[span.length - 1].remove(); } } } } </script> </head> <body> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
從輸出的結果可以看到,被乘數是所在的列,乘數是所在的行。
一.程式碼註釋:
(1).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(2).var i = 1, j = 1, html = '',宣告變數並賦值,後面會用到。
(3).var timer = setInterval(add, 100),使用定時器函式每隔100毫秒執行一次add函式。
(4).function add() {},此函式是實現的核心程式碼。
(5).if (i <= 9) {},要輸出九行。
(6).if (j < i) {
html = '<span>' + j + '*' + i + '=' + j * i + '</span>' + ' ';
},j表示列數,i表示行數,如果j小於i,那麼說明當前行還要進行打字效果,比如第三行,就要輸出3列,也就是說如果當前是第n行,那麼此行就具有n列。
(7).else if (j === i) {
html = '<span>' + j + '*' + i + '=' + j * i + '</span><br/>';
i++;
j = 0;
},如果j等於i,那麼就說明當前行已經輸出完畢,那麼j就要重置為0,因為每一行的輸出都是從第一列開始。
(8).j++,列數自增。
(9).document.write(html),輸出html字串,也就是顯示列印效果。
(10).else if (i === 10) {
var span = document.getElementsByTagName('span');
if (span.length > 0) {
span[span.length - 1].remove();
}
},這個就很簡答了,刪除span元素,也就是回溯效果。
二.相關閱讀:
(1).setInterval()可以參閱setInterval()一章節。
(2).getElementsByTagName()可以參閱document.getElementsByTagName()一章節。
相關文章
- jQuery打字機效果程式碼jQuery
- JavaScript 打字機效果詳解JavaScript
- jQuery tab選項卡效果程式碼例項jQuery
- canvas載入效果程式碼例項Canvas
- CSS橢圓效果程式碼例項CSS
- JavaScript in運算子程式碼例項JavaScript
- 美化滾動條效果程式碼例項
- canvas原型鐘錶效果程式碼例項Canvas原型
- css3水滴效果程式碼例項CSSS3
- css背景虛化效果程式碼例項CSS
- canvas氣泡上浮效果程式碼例項Canvas
- 前端學習程式碼例項-JavaScript 生成隨機數前端JavaScript隨機
- JavaScript運動框架程式碼例項JavaScript框架
- JavaScript取餘數程式碼例項JavaScript
- JavaScript 阻止事件冒泡程式碼例項JavaScript事件
- JavaScript中常用的事件程式碼及例項JavaScript事件
- jQuery點選滑出層效果程式碼例項jQuery
- css3晃動效果程式碼例項CSSS3
- CSS3心形效果程式碼例項CSSS3
- div前後翻轉效果程式碼例項
- 當前文字框高亮效果程式碼例項
- CSS3旋轉效果程式碼例項CSSS3
- 淡入淡出效果簡單程式碼例項
- canvas繪製箭頭效果程式碼例項Canvas
- html實現簡單ListViews效果的例項程式碼HTMLView
- JavaScript陣列合並程式碼例項JavaScript陣列
- JavaScript倒數計時程式碼例項JavaScript
- JavaScript 表單驗證程式碼例項JavaScript
- ChatGPT 打字機效果原理ChatGPT
- CSS3滑過光束效果程式碼例項CSSS3
- CSS3小黃人效果程式碼例項CSSS3
- css3折角效果程式碼例項CSSS3
- CSS3梯形效果程式碼例項CSSS3
- CSS3背景漸變效果程式碼例項CSSS3
- CSS3星系運動效果程式碼例項CSSS3
- JavaScript刪除元素節點程式碼例項JavaScript
- JavaScript隨滑鼠晃動的div塊程式碼例項JavaScript
- 商品搶購倒數計時效果程式碼例項
- CSS3文字凹凸效果程式碼例項CSSS3