无限滚动+砌体=无法正常工作

时间:2013-01-28 14:37:54

标签: javascript jquery html jquery-masonry

在搜索了一段时间后 - 尝试了多个'解决方案',我认为是时候寻求帮助了。我已经尝试了几乎所有我能想到的东西,但似乎没有任何效果。

我正在使用一个简单,简单的砌体代码和无限滚动,但它不起作用。任何帮助表示赞赏。

<html>
<head>
    <script src="../src/js/jquery.js"></script>
    <script src="../src/js/masonry.js"></script>
    <script src="../src/js/infinitescroll.js"></script>
    <script type="text/javascript">
        $(function(){
            var $container = $('#container');
            $container.imagesLoaded(function(){
                $container.masonry({
                    itemSelector: 'img',
                });
            });

            $container.infinitescroll({
                  navSelector  : '#navigation',
                  nextSelector : '#navigation a',
                  itemSelector : 'img',
            },

            function( newElements ) {
                var $newElems = $( newElements ).css({ opacity: 0 });
                $newElems.imagesLoaded(function(){
                    $newElems.animate({ opacity: 1 });
                    $container.masonry( 'appended', $newElems, true ); 
                });
            });
        });
    </script>
</head>
<body>
    <div id="container">
        <img src="../src/1.jpg"/>
        <img src="../src/2.jpg"/>
        <img src="../src/3.jpg"/>
        <img src="../src/1.jpg"/>
        <img src="../src/2.jpg"/>
        <img src="../src/3.jpg"/>
    </div>
    <div id="navigation">
        <a href="index.html"></a>
    </div>
</body>

总结一下;无限滚动不起作用。我不知道我做错了什么,为什么我在这里。不确定这是否与砌体部件有关。

2 个答案:

答案 0 :(得分:2)

似乎Infinite Scrolling无法使用最新的jQuery版本(1.9.0 atm。) 切换到旧版本,特别是1.7.1,解决了所有问题。

答案 1 :(得分:1)

jQuery 1.9也打破了很多向后兼容性。您也可以尝试将jQuery migrate与jQuery 1.9一起使用,看看是否可以使用它。