Tôi quyết định lộn xộn xung quanh với jquery và làm cho một trò chơi dựa trên bản đồ dựa trên axonometric đơn giản. Nó ám chỉ một số bản đồ, sau đó có một vấn đề với ngăn xếp. (Đã vượt quá kích thước ngăn xếp cuộc gọi tối đa) Tôi chỉ đang sử dụng màu nền cho lát xếp bây giờ.Tại sao vòng lặp này gây ra tràn ngăn xếp?
var map = [
"g","g","g","s","s",
"g","g","s","s","w",
"g","g","s","w","w",
"g","g","s","w","w",
"g","g","s","w","w"
];
var x = 0;
var y = 0;
var count = 0;
var background;
function init() { $.each(map, function(key, value) {
x += 30;
y += 60;
if (count > 4){
x -= 120;
y -= 360;
count = 0;
}
if (value == "g"){background = "#00ff00";}
if (value == "w"){background = "#0000ff";}
if (value == "s"){background = "#ffff00";}
$('.map_piece').clone().appendTo('body').css({'top' : x + 'px', 'left' : y + 'px','display' : 'block','background' : background});
count ++;
});
}
$('document').ready(function(){
init();
});
Cảm ơn bạn đã sửa chữa và lý do tại sao nó đã xảy ra. Tôi không quá quen thuộc với bản sao, tôi đã không nhận ra tôi đã nhân bản EVERY dụ. Cả hai câu trả lời là hữu ích, nhưng kể từ khi bạn trả lời đầu tiên 2 phút ... bạn sẽ nhận được dấu kiểm! :) –