1

我经历了一堆已经问过/回答过的问题,但它仍然对我不起作用。这就是我到目前为止所拥有的。

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

我不确定我做错了什么,或者它是否正确并且需要添加一些东西,但如果有人能向我展示如何做的分步教程,我将非常感激。我是一个视觉型的人,所以我需要查看所有的编码。感谢您花时间阅读本文并感谢您的回答。

4

1 回答 1

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'),您将浏览所有帖子,包括已经加载的帖子。

于 2012-09-18T17:14:05.797 回答