2013-03-19 84 views
0

我正在開發一個Javascript數學遊戲,並可以使用一些指導。我需要創建一個10問題的遊戲,爲用戶提供一個一個問題的簡單添加。我開始了一些事情,但已經陷入困境。我還需要一些方法向用戶展示他們最終得到的答案。Javascript/jQuery Addition遊戲

有沒有可用的幫助?這將不勝感激。

我在工作時已經將答案包含在內,但顯然我需要用戶自己提交答案並存儲該答案。

Here's a fiddle

$(document).ready(function() { 

    //declare arrays and variables for use below 
    var pNum1 = new Array(); 
    var pNum2 = new Array(); 
    var pNumCarry=0; 
    var pNumAns = new Array(); 
    var ans = new Array(); 
    var score=0; 

    function pNumGen(x) { 
     pNum1[x] = (Math.round(Math.random()*51)); 
     pNum2[x] = (Math.round(Math.random()*51)); 
     pNumAns [x] = pNum1[x] + pNum2[x]; 
     $(".pNum1").html(pNum1[x]); 
     $(".pNum2").html(pNum2[x]); 
     $(".pNumAns").html(pNumAns[x]); 
    } 

    $(".Play").click(function() { 
     pNumTrack = 0; 
     pNumGen(pNumTrack); 
    }); 
}); 
+1

聽起來像功課:) – adamb 2013-03-19 22:33:22

回答

0

爲了獲取用戶輸入您可能希望在window.prompt看:

至於跟到底正確/錯誤答案呈現用戶來說,是一種非特異性非常問題並取決於你如何實現遊戲的其餘部分。 一種可能性可能是使用array,您可以在每次猜測後推送一些文本,例如, 「問題#1:15 + 39 = 105 - 不正確」,然後在遊戲結束時循環並打印陣列內容。

0

好的。我剛剛創建的小例子,你如何開始創建你的遊戲:

http://jsfiddle.net/ePjGs/1/

$(function() { 
    getQuestion(); 
}); 

var count = 0,  
    results = []; 
function getQuestion() { 
    count++; 
    var container = $('<div />'); 
    var val1 = Math.round(Math.random()*51); 
    var val2 = Math.round(Math.random()*51); 
    var lbl = $('<label />'); 
    lbl.html(val1 + ' + ' + val2 + ' = '); 
    container.append(lbl); 
    var input = $('<input type="text" />'); 
    container.append(input); 
    var btn = $('<input type="button" value="Submit result" />'); 
    var val; 
    btn.click(function() { 

     results.push({ 
      number1 : val1, 
      number2 : val2, 
      answer : input.val() 
     }); 

     input.attr('disabled', true); 
     $(this).attr('disabled', true); 

     $(this).after(function() { 
      if(val1 + val2 == input.val()) return 'SUCCESS!'; 
      return 'ERROR'; 
     }); 

     getQuestion(); 

     updateResults(); 
    }); 
    container.append(btn); 
    $('body').append(container); 
} 

function updateResults() { 
    $('#json').html(JSON.stringify(results)); 
}