Добрый день, подскажите как лучше всего решить проблему. До меня к сожалению не доходит, не так часто пишу на js.
Имеется динамический массив (запросы к vk.api), по domready делаю 1 запрос, чтобы оперативно обрабатывать массив и показывать его содержимое. Далее, например по клику на тычку "more" я совершаю еще запросы и дописываю в массив новые значения.
Но у меня, каждый раз по клику на тычку "more" обрабатываются и дублируются данные
Сейчас пробовал с методом push (до этого был concat :18 строчка), чтобы у меня был всегда набор из "актуальных" данных, но у меня руки из {_o_}
пример в песочнице
http://plnkr.co/edit/wSWybiotn3xYGIfroa3g
Буду рад любым объяснениям
var url = "https://api.vkontakte.ru/method/wall.get?domain=adme";
var offset = 0;
var postsCount = 0;
var result = [];
function newPost() {
$.ajax({
url: url,
dataType: "jsonp",
data: {
count: 10,
offset: offset
},
success: function(data) {
var posts = data.response;
postsCount = posts.shift();
result.push(posts);
offset += 10;
parsePostsRaw();
}
});
}
function parsePostsRaw() {
for (var i=0; i < result.length; i++) {
for (var j = 0; j < result[i].length; j++) {
var current = result[i][j].id;
var text = $("<p>", {'class': 'text', text: result[i][j].text})
var img = result[i][j].attachment.photo.src;
var id = result[i][j].id;
var li = $("<li>", {}).html("<p>"+result[i][j].text+"</p>"+"<img src='"+img+"' />"+"<span>"+id+"</span>");
$('#resultText').append(li);
}
}
}
window.addEventListener("DOMContentLoaded", function () {
newPost();
$('#more').click(function () {
newPost();
});
});