ユーザーがクリックしたもの(最初、最後)を追跡する配列(サイズ2にスプライス)があります。最初と最後の要素は一意です。
ユーザーがクリックした内容に基づいてコンテンツを読み込もうとしています。奇妙なことに、2つのconsole.logを実行しない限り、更新された配列が表示されません。1つのログが実行されると、アレイは更新されません。これは、アレイの実行/操作時間と関係があると思います。
私がデバッグする方法は、クリックハンドラーを使用してドキュメントを作成し、クリックして配列の値を確認することです。何か提案やヒントはありますか?
私はこれまでこの問題を抱えたことはありませんでした。ありがとう。
var clicksInfo = [];
$('#a, #b, #c').on('click', function(e){
// array: add, splice
if(jQuery.inArray($(this).attr('id'), clicksInfo) == -1){
clicksInfo.push($(this).attr('id'));
if(clicksInfo.length == 2){
// might do something
}else if(clicksInfo.length == 3){
clicksInfo.splice(0,1);
}
}else{
clicksInfo.splice(0,1);
clicksInfo.push($(this).attr('id'));
}
if($(this).attr('id') == 'a'){
// do stuff.
}else if($(this).attr('id') == 'b'){
// do stuff.
}else if($(this).attr('id') == 'c'){
// do stuff.
}
});
$(document).on('click', function(){
console.log('clicksInfo', clicksInfo);
// console.log('clicksInfo', clicksInfo);
});