国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JavaScript實現單英文金山打字通

2024-05-06 16:52:53
字體:
來源:轉載
供稿:網友

單英文的金山打字通的具體實現代碼,供大家參考,具體內容如下

1、頁面的布局代碼如下:

<div>  <div id="char">A</div> <div id="result">請在按鍵上按下屏幕上顯示的字</div></div>

2、頁面布局的樣式代碼如下:

 body{ margin: 0;  /*開啟彈性布局,并讓彈性布局中的子元素  水平居中對齊,垂直居中對齊*/  display: flex;  /* 用于設置或檢索彈性盒子元素在主軸(橫軸)方向上的對齊方式 */  justify-content: center;  align-items: center;  /*文字居中*/  text-align: center;  /*設置背景顏色的經像漸變*/  background: radial-gradient(circle,#444,#000,#000); } #char{  font-size: 400px;  color: lightgreen;  /*設置文字陰影*/     /*位置可以為負值*/  /*text-shadow: 水平位置 垂直位置 模糊距離 陰影顏色*/  text-shadow: 0 0 50px #666; } #result{  font-size: 20px;  color: #888; } /*找到id為char及類名為error的div元素*/ #char.error{  color: red;  }

3、聲明變量接收參數

//來保存65~90之間的任意一個隨機整數 var code;//表示正確的次數 var okCount = 0;//錯誤的次數 var errorCount = 0;//獲取顯示字符的div var charBox = document.getElementById('char');//獲取顯示結果的div var result = document.getElementById('result');

4、寫show()方法獲取A~Z之間的任意一個字符

function show() {  //獲取[0,1)之間的一個隨機數  var rand = Math.random();  // //獲取一個0到26之間的一個隨機數(不包含26)  code = rand * 26;  // //Math.floor(a)對數字a向下取整,獲取到一個小于等于a最近的整數  // //獲取0~25之間任意一個整數  code = Math.floor(code);  // //獲取到65~90之間的任意整數  code = code + 65;  //把Unicode的十進制編碼轉化成對應的字符  //獲取A~Z的任意一個字符  var char = String.fromCharCode(code);  console.log(char);  //把字符顯示在界面上  charBox.innerHTML = char; } show();//調用方法

5、鍵盤按下來的事件

window.onkeydown = function (ev) { //獲取按鍵所對應的Unicode十進制編碼 var key = ev.keyCode; //判斷按鍵字母所對應的數字和隨機獲取的數字是否相等 if (key == code) {  //按鍵正確,正確次數+1  okCount++;  //當按鍵正確時,重新顯示新的字符  show();  //添加正確的動畫 通過js給div添加類名  charBox.className = 'animated zoomIn'; } else {  //按鍵錯誤,錯誤次數+1  errorCount++;  //添加按鍵錯誤的動畫  charBox.className = 'animated shake error'; } showResult(); //0.5秒之后清除,動畫 setTimeout(clearAnimated, 500);//紅色顏色消失}

6、負責清除動畫的方法

function clearAnimated() {  charBox.className = '';}

7、展示計算的結果

function showResult() {  var rate = 100 * okCount / (okCount + errorCount);  //顯示正確個數 錯誤個數 及正確率  result.innerHTML = '正確' + okCount + '個' + '錯誤' + errorCount + '個'  + '正確率' + rate.toFixed(2) + '%';//toFixed(2)保留兩位小數 }

8、效果圖

JavaScript,金山打字通

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阜平县| 紫金县| 沛县| 定日县| 阳泉市| 定襄县| 贺兰县| 金阳县| 武宣县| 公主岭市| 玉树县| 贵溪市| 赣州市| 安泽县| 健康| 伊吾县| 黄石市| 绩溪县| 乌海市| 凤凰县| 温州市| 澜沧| 济源市| 阜南县| 阿克陶县| 法库县| 商丘市| 安龙县| 盐池县| 布尔津县| 赞皇县| 河东区| 青河县| 玉溪市| 临潭县| 赤水市| 桐城市| 柳州市| 张家口市| 深州市| 仙游县|