Tôi cần trợ giúp về tập lệnh jQuery của mình. Tôi có một trang làm mới sau mỗi 10 giây và các div mới từ nguồn cấp dữ liệu được thêm vào.Xóa các div cũ nếu có nhiều hơn 20 | jQuery
Tập lệnh của tôi đếm số div và xóa div cuối cùng khi có hơn 20 div. Điều này hoạt động tốt nếu nguồn cấp dữ liệu chỉ nối thêm 1 div mỗi lần. Nhưng nguồn cấp dữ liệu cũng có thể nối thêm nhiều div cùng một lúc. Khi điều này xảy ra, số lượng có thể vượt quá tối đa 20 div. Vấn đề với điều này là kịch bản của tôi chỉ xóa 1 div và không phải tất cả các div vượt quá số lượng 20.
Đây là mã của tôi:
var $auto_refresh = setInterval(function() {
var $articleCount = $('div').length;
if ($articleCount > 20) {
$('div:last-child').remove();
}
$autoUpdate();
}, 10000); // refresh every 10000 milliseconds for new items
tôi cần phải loại bỏ tất cả các div thêm nên luôn luôn có 20 divs. Tôi hy vọng ai đó có thể giúp tôi với điều này.
Điều này sẽ không làm việc vì '$ articlecount' không thực sự cập nhật trong thời gian 'while';) – Supr
Bây giờ nó không chắc chắn. –
xin lỗi, tôi nghĩ đây là trường hợp [HTMLCollection đang hoạt động] (http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-75708506) - không nhận thấy bạn chiều dài của nó là một biến riêng biệt –