人気のあるjqueryプラグインMasonryを使用して、列をレイアウトにうまく適合させています。私はsetIntervalを使用して、BoltHeadがここで持っていたのとまったく同じ問題を解決しています: JQuery、setTimeoutが機能していません
解決策は、setTimeoutを使用して、次のように石積みプラグインを毎秒更新することです。
$(function() {
setInterval(update, 500);
});
function update() {
var $container = $('#packages');
$container.imagesLoaded(function(){
$container.masonry({
itemSelector : '.mainPackage',
columnWidth : 316,
singleMode: true,
gutterWidth: 15
});
});
}
これはブラウザのパフォーマンスに関しては悪い考えですか?このかなり重い関数を毎秒実行するjqueryは、処理速度を低下させると思います。これは悪い習慣ですか?これを行う理由は、.slideToggleを使用してより多くのコンテンツをスライドダウンしているため、レイアウトを再調整するために石積みが必要だったためです。このソリューションについて何か考えはありますか?