【发布时间】:2015-11-18 21:12:29
【问题描述】:
我正在构建一个包含不同问题类型的问答游戏。其中之一是字谜,所以字母必须重新排列成正确的顺序。为了实现这一点,我使用了 3 个 jQuery 数组,一个包含原始顺序中的字母,另一个包含用户选择顺序中的字母。
当用户选择一个字母时,需要将其添加到选中的字母数组中,并从随机字母数组中移除。当每个数组中有 2 个相同的字母时,问题就出现了。
提出这个问题的例子是特里的作品。
单击 R 时,我只需要将其中一个 R 从数组中删除并添加到另一个。我将如何实现这一目标?
数组如下所示:
字母 = ["t","e","r","r","y"]; 洗牌 = ["e","t","r","y","r"];
这是我的代码:
$(document).on('click', '.order .letter', function(e){
e.preventDefault();
clickedLetters.splice($.inArray($(this).text().replace(/ /g,''), clickedLetters),1);
console.log(letters);
console.log(shuffled);
console.log(clickedLetters);
$('.order p').empty();
$('.keyboard .keyboard-row').empty();
l=0;
while (l < letters.length) {
console.log(letters[l]);
revealedLetter="";
if (clickedLetters[l]!= undefined) {
revealedLetter=clickedLetters[l];
}
$('.order p').append('<span class="letter revealed">'+revealedLetter+'</span>');
// $(this).addClass('correct');
l++;
}
s=0
while (s < shuffled.length){
if (shuffled[s].match(/[a-z]/i)){
if (jQuery.inArray(shuffled[s],clickedLetters) == -1) {
$('.keyboard .keyboard-row').append('<div class="anagram-letter">'+shuffled[s]+'</div>')
}
s++
}
}
if (clickedLetters.length == letters.length) {
alert('done');
}
});
谢谢, 肖恩
【问题讨论】:
-
您需要将您已经尝试过的相关代码添加到您的问题中,以及一个示例数组。
-
提供数组、数据和你当前尝试做的代码
-
问题已更新。
标签: javascript jquery html arrays