Аудио и видео Tumblr + бесконечная прокрутка

Я просмотрел кучу уже заданных / отвеченных вопросов, но это все еще не работает для меня. Это то, что у меня есть до сих пор.

static.tumblr.com/epkyugq/C0ym8qnir/jquery-1.7.1.min.js

masonry.desandro.com/jquery.masonry.min.js

masonry.desandro.com/js/jquery.infinitescroll.min.js

static.tumblr.com/epkyugq/4fmmajupw/decker.js

Я не уверен, что я делаю неправильно, или это правильно, и что-то нужно добавить, но я был бы очень признателен, если бы кто-нибудь мог показать мне пошаговое руководство о том, как это сделать. Я визуал, поэтому мне нужно видеть весь код. Спасибо, что нашли время, чтобы прочитать это, и спасибо за ответы.


person White Wolf Wizard    schedule 13.09.2012    source источник
comment
Вы получаете какие-либо ошибки консоли? У вас есть ссылка на сайт?   -  person graygilmore    schedule 14.09.2012
comment
Неа. Аудио и видео не появляются после 15 постов. Я добавил ссылку выше.   -  person White Wolf Wizard    schedule 18.09.2012
comment
Для начала вы должны поместить все свои файлы JS непосредственно перед закрывающим тегом </body>. Вы также включаете две разные версии jQuery, что является большим запретом.   -  person graygilmore    schedule 18.09.2012


Ответы (1)


Ваш ремонт происходит вне сценария бесконечной прокрутки. Вы должны изменить его, чтобы включить его, например:

// other stuff up here
}, function( newElements ) {

    var $newElems = $(newElements).css({
        opacity: 0
    });

    $newElems.imagesLoaded(function () {
        $newElems.animate({
            opacity: 1
        });
        $container.masonry('appended', $newElems, true);
    });

    /* repair video players*/
    $newElems.find('.video').each(function(){
        var audioID = $(this).attr("id");
        var $videoPost = $(this);
        $.ajax({
            url: '/api/read/json?id=' + audioID,
            dataType: 'jsonp',
            timeout: 10000,
            success: function(data){
                $videoPost.html(data.posts[0]["video-player"]);
            }
        });
    });

    /* repair audio players*/
    $newElems.find('.player').each(function(){
        var audioID = $(this).attr("id");
        var $audioPost = $(this);
        $.ajax({
            url: '/api/read/json?id=' + audioID,
            dataType: 'jsonp',
            timeout: 10000,
            success: function(data){
               $audioPost.html(data.posts[0]["audio-player"]);
            }
        });
    });
});

Я использую $newElems.find(), потому что мы хотим загружать только новые сообщения на странице. Если вы просто выполните $('.video'), вы просмотрите все сообщения, включая уже загруженные.

person graygilmore    schedule 18.09.2012
comment
Спасибо большое. Оно работает. Ты только что спас мне жизнь. Без шуток. - person White Wolf Wizard; 19.09.2012