私があなたの質問を正しく理解していれば、10 個の緑の点を青に変換してから、緑に戻すことができます。
今、あなたが望むのは、ユーザーがその「秘密」の緑色の点をもう一度クリックしたときです。それは青に変わるはずですそうでなければ、間違ったクリックを警告し、ゲームをリセットします..私は正しいですか?
もしそうなら、次のことがあなたを助けるはずです..明確化が必要な場合はお知らせください...
また、コードのjsfiddleも役立ちます
$(document).ready(function() {
var quizStarted=false;
$('#greengrid').on('click', function() {
if(quizStarted)
return;
quizStarted=true;
$('.greentoblue').css('background-color', 'blue');
setTimeout(function() {
$('.greentoblue').css('background-color','green');
$('.greentoblue').addClass("wasBlue");
}, 3000);
});
$('.green').click(function(){
if(!quizStarted)
return;
if($(this).hasClass("wasBlue")){
$(this).css('background-color', 'blue');
/* Get count of Selected Blue dots*/
var selectedBlueDots=$('#greengrid').filter(function() {
var match = 'blue'; // match background-color: blue
/*
true = keep this element in our wrapped set
false = remove this element from our wrapped set
*/
return ( $(this).css('background-color') == match );
}).size();
if(selectedBlueDots== 10){
alert("You won");
$(".wasBlue").css('background-color', 'green');
$(".wasBlue").removeClass("wasBlue");
quizStarted=false;
}
}else{
alert("You Forgot");
$(".wasBlue").css('background-color', 'green');
$("not(.wasBlue)").css('background-color', 'red');
$(".wasBlue").removeClass("wasBlue");
quizStarted=false;
}
});
});
楽しみのために同じことを試しました...そしてWorking Demoを持っています