對於一個小拼圖/記憶遊戲,我想比較兩個難題。如果他們是相同的(有相同的字母),我想提醒('匹配')。我認爲我是正確的,但現在其中一個變量似乎超出了範圍,因爲我不知道我應該把代碼放在哪裏。所以現在它返回第二塊,但第一塊保持未定義狀態。你能幫我嗎?非常感謝!Jquery比較兩個變量,看它們是否匹配,但是一個超出範圍?
點擊shuffle &顯示,之後點擊2件,你會看到'undefined'語句。 我想知道爲什麼它不工作,什麼會使其工作,爲什麼:P
HTML
<button id="shuffle">Show and Shuffle</button>
<div id="container">
<div class="choices"><div class="letter">A</div></div>
<div class="choices"><div class="letter">B</div></div>
<div class="choices"><div class="letter">C</div></div>
<div class="choices"><div class="letter">A</div></div>
</div>
JS
var amountofclicks = 0;
var firstcard = false;
var secondcard = false;
$('#shuffle').bind('click', function() {
var divs = $("div.choices").get().sort(function() {
return Math.round(Math.random());
}).slice(0, 16);
$(divs).appendTo(divs[0].parentNode).show();
});
$('.choices').bind('click', function() {
if (amountofclicks < 2) {
amountofclicks++;
$(this).unbind('click');
if (amountofclicks == 1) {
firstcard = true;
var txt = $(this).find('.letter').text();
}
if (amountofclicks == 2) {
secondcard = true;
var txt2 = $(this).find('.letter').text();
alert(txt + ' ' + txt2);
}
}
});
這不是一個範圍問題。 js沒有'if'作用域只是其中一個if語句塊沒有被輸入 – kidwon
@kidwon非常好的一點,我已經修改了對問題的描述。 –
@Rory McCrossan謝謝你的回答:) – Opoe