Vòng lặp này (xem jsfiddle) cố gắng thêm một thẻ <span>
vào vùng chứa năm lần. Nhưng nó chỉ làm điều đó một lần. Tại sao?Tại sao điều này chỉ được nối thêm một lần?
var myArr = [0,1,2,3,4];
var $span= $('<span></span>');
for (var i = 0; i < (myArr.length); i++) {
$('.contain').append($span);
}
Không chắc chắn tại sao nhưng nó hoạt động nếu bạn thay đổi dòng 2 cho 'var khoảng = " SPAN";'. – nickdos
Thú vị, tôi đã thử nghiệm điều này trên mã của tôi (phức tạp hơn nhiều so với bản demo này) và đề xuất trong nhận xét ở trên hoạt động. ví dụ. nối thêm một chuỗi thay vì một đối tượng jQuery. Có bất kỳ khó khăn nào để nối thêm một chuỗi so với một đối tượng jQuery hay là thực hành không tốt? – brentonstrine
Tôi sẽ sử dụng một chuỗi trong trường hợp này. jQuery đối tượng là tốt cho khi bạn đang xây dựng một yếu tố phức tạp dom programatically (trên nhiều dòng mã) hoặc nếu bạn đã sử dụng jQuery để có được một yếu tố dom từ trang đã được. – nickdos