我已经推出了一个网站,但我仍然遇到Jquery Masonry的问题。我已经阅读了关于使用Document Ready vs Window Load的每篇文章。除了包含我的问题答案的帖子以外的所有人。
以下是网站:http://www.buckysspecialspice.com
有时负载很好。今天它没有。
我的函数文件是这样的。如果我使用Document Ready,则有时会在调整浏览器大小之前将其放在一起。如果我使用Window Load,则所有post块都按行加载。
任何建议都会很棒。
// MASONRY
function anaximander_masonry() {
if (!is_admin()) {
wp_register_script('jquery_masonry', get_template_directory_uri(). '/js/jquery.masonry.min.js', array('jquery'), '2.0.110526' );
wp_enqueue_script('jquery_masonry');
add_action('wp_footer', 'anaximander_add_masonry');
function anaximander_add_masonry() { ?>
<script>
jQuery(window).load(function($){
var $container = $('img');
$container.imagesLoaded(function(){
$('#masonry-index').masonry({
itemSelector: '.index-post-container',
isAnimated: true,
columnWidth : 3
});
});
});
</script>
<?php
}
}
}
add_action('init', 'anaximander_masonry');
答案 0 :(得分:0)
@author你可能想要$(window).load,因为它会在开始之前等待加载所有东西(包括图片),然后通过砌体重新排列东西。但是什么是.imagesLoaded?是否只是在选择器中的图像加载后触发回调?为什么要和$(窗口).load?
另外,我使用“jQuery”而不是“$”,因为它似乎不起作用(编辑:有人打败了我)