2016/04/08
JQuery
要素をブロックで隙間なく並べる便利なjQueryのmasonryですが、
chromeやsafariで要素が重なってしまう不具合があります。
色々と調べたところ、要素が表示される前に、
masonryが高さを計算してしまうのが原因でした。
いくつかの参考サイトからタグを拝借して修正をしました。
参考サイト
【jQuery】[Masonry]の表示の不具合を解消するために[imagesLoaded]を併用する方法。
jQuery Masonryを使う際にわりと大事なimagesLoadedプラグイン
WordPressでjQuery Masonry使ったら重なっちゃった時の解決方法
まずimagesLoadedをダウンロード
<head>~</head>に記述
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script> <script src="/js/jquery.masonry.min.js"></script> <script src="/js/jquery.imagesloaded.min.js"></script>
下記を記述
<script type="text/javascript">
$(window).load(function(){
var $container = $('#masonry');
$container.imagesLoaded(function(){
$container.masonry({
itemSelector: '.box',
isFitWidth: true,
isAnimated: true
});
});
});
</script>
#masonryと.boxは実際のcssに合わせてください。
ゼヒトモ内でのプロフィール: ROCKSTREAM, ゼヒトモのホームページ作成・制作サービス, 仕事をお願いしたい依頼者と様々な「プロ」をつなぐサービス
2026/10/10
延喜式内社
神社
2026/10/09
AI
Wordpress
2026/10/08
ホームページ制作
2026/10/07
AI
2026/09/23
Linux