Masonry
和imagesLoaded
应该加载并正常工作。已经制作了一个类似的网站,并且可以正常工作。我不知道我的问题在哪里,所以我希望你能看到问题所在。应该缺少一些东西。
在Chrome检查中,我收到以下错误:
Uncaught TypeError: $(...).imagesLoaded is not a function
根据我的理解,这意味着应该正确加载.imagesLoaded
和Masonry
?否则我会收到错误$container.imagesLoaded is not a function
?
我试过什么
- 检查 jquery-2.1.4.min.js 是否正确加载
- 更改加载 jquery 的顺序
- 在线搜索
- 在 jquery 中搜索错误
页眉
<script src="http://www.vekvemedia.no/wp-content/themes/vekvemedia/js/jquery-2.1.4.min.js"></script>
<script src="http://www.vekvemedia.no/wp-content/themes/vekvemedia/js/collection.js"></script>
<?php wp_head(); ?>
.HTML
<div class="container">
<div id="masonry-container" class="row nomargin">
<div class="col-md-9">
<div class="item col-lg-4 col-md-4 col-sm-4">
<!--- Content --->
</div>
<div class="item col-lg-4 col-md-4 col-sm-4">
<!--- Content --->
</div>
<div class="item col-lg-4 col-md-4 col-sm-4">
<!--- Content --->
</div>
</div>
<div class="item col-lg-3 col-md-4 col-sm-3 col-xs-12">
<!--- Content --->
</div>
</div>
</div>
页脚
<script src="http://www.vekvemedia.no/wp-content/themes/vekvemedia/js/masonry.pkgd.min.js"></script>
<script src="http://www.vekvemedia.no/wp-content/themes/vekvemedia/js/imagesloaded.js"></script>
<script>
$('#masonry-container').imagesLoaded( function(){
$('#masonry-container').masonry({
itemSelector: '.item',
isAnimated: true,
isFitWidth: true
});
});
$(window).resize(function() {
$('#masonry-container').masonry({
itemSelector: '.item',
isAnimated: true
}, 'reload');
});
</script>
该页面可以在这里找到。
它工作的类似页面
看来你有一个Javascript冲突。要解决此问题,您可以将jQuery置于无冲突模式。查看 jQuery noConflict 函数。
所以试试这个:
jQuery.noConflict();
jQuery( document ).ready(function( $ ) {
$('#masonry-container').imagesLoaded( function(){
$('#masonry-container').masonry({
itemSelector: '.item',
isAnimated: true,
isFitWidth: true
});
});
$(window).resize(function() {
$('#masonry-container').masonry({
itemSelector: '.item',
isAnimated: true
}, 'reload');
});
});