@Fierfoxik

Как обновить offset в vk api?

Есть функция loadPhoto которая принимает id пользователя, id альбома и offset. Если offset не передан то по дефолту он равен 0. В ней вызываем метод vk api с настройками,загружаем по 150 фото.

В обработчике на клик мы передаем в loadPhoto только id-шки.

В обработчике на скролл с триггером вызываем loadPhoto и там уже необходимо указывать offset для подгрузки новых фотографий.

drawPhoto просто функция отрисовки.

Проблема вот в чем: как обновлять offset чтобы подгружать новые фото и как только все фото которые есть в альбоме будут загружены остановить загрузку.

Пока дошел до того что мы проверяем полученные данные с вк и если их длина все время = 150 то в аргумент offset будет падать += 150 затем берем пустую переменную и присваиваем ей offset и ее передаем в аргумент в обработчике на скролл. Работает так себе , подгрузило больше фото чем есть в альбоме.

function loadPhoto(profileID, albumID, offset) {
  albumName = albumID;
  if (typeof offset == 'undefined') {
    offset = 0;
  }

  VK.api('photos.get', {
    v: 5.62,
    owner_id: profileID,
    album_id: albumID,
    offset: offset,
    rev: 1,
    photo_sizes: 1,
    count: 150
  }, function startLoadPhoto(result) {
    drawPhoto(result.response.items);
    if (result.response.items.length == 150) {
      offset += 150;
      setOffset = offset;
    }
  });

};
  • Вопрос задан
  • 644 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы