包装由html发起.如何实现imagesLoaded



我正在用packery创建一个网站,并试图用imagesLoaded修复一些布局问题。我正在通过这样的html启动包装:

 <div id="content" class="site-content inner js-packery"
  data-packery-options='{ "itemSelector": ".item", "gutter": 0}'>

我正在尝试使用像这样加载的图像:

 <script>
$(function(){
    var $container = $('#container');
    $container.imagesLoaded( function() {
        $container.masonry();
    });
});
</script>

但它不起作用,我不知道该怎么办:(

var $container = $('#container');
$container.imagesLoaded( function() {
  $container.masonry();
});

imagesLoaded本身就是一个函数,来自:

http://imagesloaded.desandro.com/imagesloaded.pkgd.min.js

你不必把它窝起来。希望它能有所帮助。

解决方案是将脚本放置在页面的底部,刚好位于结束正文标记的上方。像这样:

<?php wp_footer(); ?>
<script>
var container = document.querySelector('#blog-list-center');
var $pckry;
var $pckry = new Packery( container, {
// options
itemSelector: '.item',
gutter: 0,
});
// initialize Packery after all images have loaded
imagesLoaded( container, function() {
$pckry = new Packery( container );
});
</script>
</body>
</html>

最新更新