0

我正在尝试实现无限滚动打包。我绝不是一个编码员,但这是我能够开始工作的:

var $container = $('#content');
$container.packery({
  // options
});

/* INFINITESCROLL */
$container.infinitescroll({
     //options
}, function( newElements ) {
  $(newElements).imagesLoaded( function() {
     $container.packery( 'appended', newElements ); 
});

问题是,我还想将 packetry.spaces 与画布结合使用来填充元素之间的间隙,例如以下示例:http ://codepen.io/desandro/pen/shleG

我对代码没有深入的了解,但是我已经能够得出一个令人满意的结果,其中主要是在这里复制和粘贴,这涉及到这一行

var canvas = container.querySelector('canvas');

等等但是......当我以这种方式启动包装时,我只能让它工作:

var $container = document.querySelector('#content');
var pckry = new Packery( $container, {
  // options
  itemSelector: '.brick',
  gutter: 5
});

并且在使用 querySelector 启动它时,我无法使无限滚动在同一个“容器”上工作。

所以现在我有使用packery的无限滚动或填充间隙,但不是两者兼而有之。

如果有一种简单的方法可以使这一切正常工作,我真的很感激任何提醒!

4

1 回答 1

0

d'oh ...当使用 querySelector 启动(如果“启动”确实是这个词)打包时,您需要像这样附加它:

pckry.appended( newElements );

就是这样。

于 2014-05-20T02:53:42.583 回答