CodePenの私のペンへのリンクがマーキングされた - http://codepen.io/PartTimeCoder/pen/WwMxEX?editors=0010JavaScriptで私のaskQuestion()関数は常に間違っansweras
Javascriptがここにある:私が思うところコメントの間で
function randomNum(digits) {
return Math.floor(Math.pow(10, digits - 1) + Math.random() * 9 * Math.pow(10, digits - 1));
}
function askQuestion(digits) {
$(".result").html("");
var factor1 = randomNum(digits);
var factor2 = randomNum(digits);
var correctanswer = factor1 * factor2;
var answer = parseInt($(".answer").val(), 10);
console.log(correctanswer);
$(".question").html(factor1 + " × " + factor2);
var score = 0;
//Problem Starts Here
$(".check").click(function() {
if (correctanswer == answer) {
$(".result").html("Correct");
score += 1;
$(".score").html(score);
askQuestion(digits);
} else {
$(".result").html("Wrong");
score -= 1;
$(".score").html(score);
}
});
//Problem Ends Here
}
$(document).ready(function() {
$(".answer").hide();
$(".check").hide();
var digits = 0;
$(".digits-1").click(function() {
digits += 1;
});
$(".digits-2").click(function() {
digits += 2;
});
$(".digits-3").click(function() {
digits += 3;
});
$(".btn").click(function() {
$(".btn").hide();
$(".answer").show();
$(".check").show();
askQuestion(digits);
});
});
です問題はです。例えば、4 x 9とi入力36を求めるとき、それは依然としてそれを間違っているとマークする。なぜこれがこれをしているのかわかりません。最初は私はまだ入力された情報が文字列かもしれないので、私はそれにparseIntを使いましたが、それはまだ動作しませんでした。すべての助けに感謝します。前もって感謝します!
これはうまく動作しますが、最初に問題が発生した場合は最初に質問しますが、2回目は問題になります。あなたはこれを修正する方法を知っていますか? –
あなたの 'score'変数は、askQuestion関数を入力するたびに0に設定されます。したがって、それらは1を超えることはありません。その変数を関数の外に移動するか、 '$( '。score')要素の値から読み込むことができます。 – krillgar
また、addQuestion関数からcheck clickイベントを取得します。それ以外の場合は、その関数を呼び出すたびに、別のリスナーを追加すると、スコアがばかげたレートで上昇することがわかります。 – krillgar