| 
            
            
             
              <!doctype html> <html> <head> <meta charset="utf-8"> <title>比大小游戏</title> <style> body {     font-family: Arial;     font-size: 14px; } input {     font-family: "宋体";     width: 78px;     height: 25px; } #Main {     overflow: hidden;     margin: 0px auto 0px auto;     width: 585px; } #Main > img {     float: left; } #Main > section {     float: left;     width: 245px;     text-align: center;     padding-top: 40px; } #Main h3 {     font-weight: bold;     color: #FFA600;     font-size: 16px; } #Main input {     margin-top: 35px;     width: 118px;     height: 38px;     color: #7B8E94;     font-size: 18px;     font-family: "黑体"; } #Main td {     text-align: left; }
  #Game {     text-align: center; } #Game > * {     margin: 0px auto 0px auto; } #fields {     padding-bottom: 35px;     overflow: hidden;     width: 560px; } #buttons {     width: 360px; } #fields > * {     float: left; } #fields > section {     border: 1px solid grey;     width: 90px;     height: 105px;     margin: 20px 20px 0px 20px;     text-align: left;     padding-top: 25px;     padding-left: 10px; } fieldset {     width: 200px;     height: 175px;     padding: 0px; } legend {     font-size: 13px; } fieldset > p {     font-size: 100px;     font-weight: bold;     color: #9B6464;     margin: 15px 0px 0px 0px; } #message {     width: 163px;     height: 20px;     background-color: #FBECD1;     border: 1px solid #FED0B0;     color: #894626;     font-size: 12px;     padding-top: 2px;     margin-top: 100px;     margin-bottom: 8px; }
  #GameOverBackground {     width: 100%;     position: fixed;     top: 0px;     left: 0px;     background-color: #999999;     opacity: 0.6; } #GameOverBackground div {     background-color: black;     border: 1px solid #00FFFF;     width: 570px;     height: 180px;     margin: 0px auto 0px auto; } #GameOver {     text-align: center;     width: 570px;     height: 180px;     position: fixed;     top: 0px;     left: 0px;     border: 1px solid black; } #GameOver p {     color: red;     font-size: 100px;     font-weight: bold;     margin: 6px 0px 0px 0px; } </style> <script> var records = []; var values = [null, null]; var intervalID = null; var msgCount = 0; var msgIntervalID = null; var HP, score;
  function Rand(min, max) {     return min + RandByMax(max - min); }
  function RandByMax(max) {     return Math.round(Math.random() * max); }
  function begin() {     UpdateGameScreen(false);     intervalID = setInterval(UpdateGameScreen, 50);     UpdateGameButton(); }
  function RemoveTimer() {     if (intervalID != null) {         clearInterval(intervalID);         intervalID = null;     } }
  function RemoveMessageTimer() {     if (msgIntervalID != null) {         clearInterval(msgIntervalID);         msgIntervalID = null;     }     msgCount = 0; }
  function stop() {     var points;     RemoveTimer();     points = values[1] - values[0];     UpdateGameButton();     UpdateGameScreen(false);          if (points >= 0) {         score += points;         ShowMessage("你赢了,获取分数:" + points + "分");     } else {         if (HP <= 1) {             HP = 0;             GameOver();         } else {             HP--;             ShowMessage("你输了,扣取生命:1");         }     }     UpdateGameScore(); }
  function UpdateGameScore() {     var span = document.getElementById("fields").getElementsByTagName("section").item(0).getElementsByTagName("span");     span.item(0).innerHTML = score;     span.item(1).innerHTML = HP; }
  function GameOver() {     var background = document.createElement("div");     var frame = document.createElement("div");     var text = document.createElement("div");     var p = document.createElement("p");     var btn = document.createElement("input");          background.appendChild(frame);     p.innerHTML = "Game over";     text.appendChild(p);     btn.type = "button";     btn.value = "确定";     btn.onclick = RequireName;     text.appendChild(btn);          background.id = "GameOverBackground";     text.id = "GameOver";     document.body.appendChild(background);     document.body.appendChild(text);     onResize();     window.onresize = onResize; }
  function RemoveGameOver() {     document.body.removeChild(document.getElementById("GameOverBackground"));     document.body.removeChild(document.getElementById("GameOver"));     window.onresize = null; }
  function onResize() {     var background = document.getElementById("GameOverBackground");     var frame = background.firstChild;     var text = document.getElementById("GameOver");     var height = document.documentElement.clientHeight;     var mtop = Math.round((height - frame.offsetHeight) / 2);     background.style.height = height + "px";     frame.style.marginTop = mtop + "px";     text.style.left = frame.offsetLeft + "px";     text.style.top = frame.offsetTop + "px"; }
  function RequireName() {     var name = prompt("人过留名,雁过留声!", "");     if (name == null) {         return;     } else if (name == "") {         name = "见不得人";     }     AddRecord(name, score, 3);     RemoveGameOver();     ShowMainScreen(); }
  function AddRecord(name, score, maxNum) {     var record = [name, score];     var i;     for (i = 0; i < records.length; i++) {         if (records[i][1] < score) {             break;         }     }     records.splice(i, 0, record);          while (records.length > maxNum) {         records.pop();     } }
  function ShowMessage(message) {     var msgdiv = document.getElementById("message");     msgdiv.innerHTML = message;     msgdiv.style.visibility = "visible";     if (msgIntervalID == null) {         msgCount = 8; // 8 * 250ms = 2s         msgIntervalID = setInterval(HideMessage, 250);     } }
  function HideMessage(force) {     msgCount--;     if (msgCount <= 0 || force === true) {         document.getElementById("message").style.visibility = "hidden";         RemoveMessageTimer();     } }
  function UpdateGameScreen(init) {     var fieldsets = document.getElementsByTagName("fieldset");     var p1 = fieldsets.item(0).getElementsByTagName("p").item(0);     var p2 = fieldsets.item(1).getElementsByTagName("p").item(0);     if (intervalID != null) {         values[0] = Rand(1, 999);         values[1] = Rand(1, 999);         p1.innerHTML = values[0];         p2.innerHTML = values[1];     } else {         if (init) {             p1.innerHTML = p2.innerHTML = "???";         }     } }
  function UpdateGameButton() {     var btn = document.getElementById("buttons").getElementsByTagName("input").item(0);     if (intervalID == null) {         btn.value = "比一比";         btn.onclick = begin;     } else {         btn.value = "停";         btn.onclick = stop;     } }
  function ShowMainScreen() {     RemoveTimer();     HideMessage(true);     UpdateMainScreen();     document.getElementById("Main").style.display = "";     document.getElementById("Game").style.display = "none"; }
  function ShowGameScreen() {     InitGameScore();     UpdateGameScreen(true);     UpdateGameButton();     document.getElementById("Main").style.display = "none";     document.getElementById("Game").style.display = ""; }
  function InitGameScore() {     score = 0;     HP = 3;     UpdateGameScore(); }
  function UpdateMainScreen() {     var trs = document.getElementsByTagName("tr");     var i, tds;     for (i = 0; i < records.length && i < 3; i++) {         tds = trs.item(i).getElementsByTagName("td");         SetText(tds.item(1), records[i][0]);         SetText(tds.item(2), records[i][1]);     } }
  function SetText(obj, text) {     if (obj.innerText) {         obj.innerText = text;     } else {         obj.textContent = text;     } }
  function ConfirmExit() {     if (confirm("你确定不玩了吗?")) {         ShowMainScreen();     } } </script> </head>
  <body> <section id="Main">   <img src="welcome.png" alt="welcome" width="335" height="300">   <section>     <h3>比大小排行</h3>     <table border="0">       <tbody>         <tr style="color:red">           <td width="60px" align="right">第一名:</td>           <td width="90px">空缺</td>           <td width="45px">0</td>         </tr>         <tr>           <td align="right">第二名:</td>           <td>空缺</td>           <td>0</td>         </tr>         <tr>           <td align="right">第三名:</td>           <td>空缺</td>           <td>0</td>         </tr>       </tbody>     </table>     <input type="button" value="开始" onClick="ShowGameScreen()">   </section> </section> <section id="Game" style="display:none">   <div id="message" style="visibility:hidden"></div>   <div id="fields">     <fieldset>       <legend>电脑</legend>       <p>???</p>     </fieldset>     <section>       <p style="color:red">分数 <span>0</span></p>       <p>生命 <span>3</span></p>     </section>     <fieldset>       <legend>玩家</legend>       <p>???</p>     </fieldset>   </div>   <div id="buttons">     <input type="button" value="比一比" onClick="begin()">     <input type="button" value="不玩了" onClick="ConfirmExit()">   </div> </section> </body> </html>
               
                       |