2012-02-15 5 views
3

私はMasonry scriptを使ってwebsiteにボックスをレイアウトしています。jQuery Masonry - 流体レイアウトの問題

ブラウザウィンドウのサイズを変更したり、携帯端末を横にして元に戻したりする場合を除いて、ほとんどのブラウザでうまくいきます。

メーソンリーがなければ、私はうまく動作する流動的なレイアウトを持っています。流体では、ボックスが小さい画面サイズで全幅を占めることを意味します。

メーソンリーでは、最初にサイトに行ってもOKですが、ブラウザウィンドウのサイズを変更したり、携帯端末を横にしたりすると、レイアウトが狂ってしまいます。リフレッシュすると再びソートされます。

これを修正する方法があるのか​​、別のスクリプトを使用すべきか、小さい画面のスクリプトを無効にするのが最善であるかどうかはわかりません。

誰かがお手伝いできます!

ありがとうございました。

+0

現在のアプローチ:画面が小さすぎると 'masonry( 'destroy')を呼び出すハンドラを' window.resize'に追加します。 CSSは残りの部分を処理します。 –

答えて

3

私の記憶の中で、メーソンリーは呼び出されたときに要素の寸法をつかみ、石積みを実行します。これらのディメンションは静的であると予想されます。これは「メイソンド」レイアウトを計算する方法です。

これを流体レイアウトと組み合わせることは、災害のためのレシピであると私の意見では考えています。しかし、それは不可能ではありません。

resizeイベントでは、コンテナのmasonry()を再度呼び出すだけです。

+0

おかげでグレッグ!それは動作します。 –

+2

https://github.com/louisremi/jquery-smartresizeを使用して、resize関数が呼び出される頻度を抑えることができます。私は同位体がこれを内蔵していると信じていますが、それを石積みに加える必要があります。 – Galaxy

関連する問題