@shnicel

Как переделать в ajax запрос?

Всем привет имеется некий код,не когда не работал с ajax'ом вопрос хочу сделать при скроллинге вниз около 70% ,что бы выполнялась подгрузка контента с параметрами offset сначала 0,потом 50,100 и т.д. сейчас это все вот в каком виде
if ($(this).hasClass('group')) {
            //$('.bitrate').children('div').css('display', 'none');
            VK.callMethod("resizeWindow", 800, 1275);
            VK.api('audio.get', { owner_id :-1959, offset:0, count: 50}, function(pl_music2) {
                if(pl_music2.response) {
                    $.each(pl_music2.response, function(key, value) {
                        key != 0 ? line += '<a id="pg'+key+'" href="'+value.url+'" class="sm2_link">'+value.artist+' - '+value.title+'</a>' : false;
                    });
                    $('.vkla.group-detail').html(line);
                    $('div[for="group-detail"]').trigger('click');
                }
            });
        }

При клике по табу выполняется запрос выводятся 50 элементов,offset:0
  • Вопрос задан
  • 166 просмотров
Пригласить эксперта
Ответы на вопрос 1
skamenetskiy
@skamenetskiy
Full stack developer
Можно примерно вот так, стоит доработать если что.
if ($(this).hasClass('group')) {
    VK.callMethod("resizeWindow", 800, 1275);
    var offset = 0,
        $body = $('body'),
        getData = function(offset) {
            VK.api('audio.get', {
                owner_id: -1959,
                offset: 0,
                count: 50
            }, function(pl_music2) {
                if (pl_music2.response) {
                    $.each(pl_music2.response, function(key, value) {
                        key != 0 ? line += '<a id="pg' + key + '" href="' + value.url + '" class="sm2_link">' + value.artist + ' - ' + value.title + '</a>' : false;
                    });
                    $('.vkla.group-detail').html(line);
                    $('div[for="group-detail"]').trigger('click');
                }
            });
        };
    getData(offset);
    $body.on('scroll', function() {
        if ((($body.scrollTop() / $body.height()) * 100) > 70) {
            offset += 50;
            getData(offset);
        }
    });
}
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы