中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript怎么實現單英文金山打字通

發布時間:2021-04-12 10:37:36 來源:億速云 閱讀:145 作者:小新 欄目:web開發

這篇文章主要介紹了JavaScript怎么實現單英文金山打字通,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

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

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怎么實現單英文金山打字通

感謝你能夠認真閱讀完這篇文章,希望小編分享的“JavaScript怎么實現單英文金山打字通”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

房产| 哈尔滨市| 湟中县| 博湖县| 平罗县| 孟村| 漳州市| 翼城县| 晴隆县| 丰城市| 平罗县| 阿荣旗| 阳江市| 剑川县| 鄂托克前旗| 新化县| 武安市| 九江市| 莱阳市| 宜兴市| 昌乐县| 乐都县| 桓仁| 井陉县| 桦甸市| 望城县| 通城县| 龙泉市| 黑河市| 武安市| 金堂县| 峡江县| 伊宁县| 荔浦县| 金平| 老河口市| 安新县| 从化市| 乳源| 巴彦淖尔市| 奎屯市|