私は、3列のレイアウトのためにjquery mobileで組み込みのui-gridを使用しようとしています。同じ高さのuiブロックを持つjquery mobile ui-grid
問題は、異なる高さのui-block内のui-barです。私は、3つの列のすべてが最高の列と同じ高さになるようにしたいと思います。
誰もがこの問題の簡単な解決法を知っていますか? CSSだけで解決したいのですが、私はそれを管理しませんでした。 JSは本当にこの問題の唯一の解決策ですか?
JsFiddle: http://jsfiddle.net/zHbuC/466/
コード:
<div data-role="page" id="station" class="type-home">
<div data-role="header"><h1>Header Page 1</h1></div>
<div data-role="content" data-theme="b">
<div class="ui-grid-b" style="text-align:center">
<div class="ui-block-a">
<div class="ui-bar ui-bar-c">A</div>
</div>
<div class="ui-block-b">
<div class="ui-bar ui-bar-c">B</div>
</div>
<div class="ui-block-c">
<div class="ui-bar ui-bar-c">
<p>B with alot of text</p>
<p>with lots of lines</p>
<p>another line</p>
</div>
</div>
</div>
</div>
<div data-role="footer"><h4>Footer</h4></div>
</div>
は、これまでありがとう!私は、javscriptのソリューションは本当に最高のソリューションと思われる参照してください。しかし、残念ながら私はajaxをページにロードしています。私はページの "pageinit"イベントを登録しましたが、すべてのui-barの高さは常に0として返されます。今私はそれを調べてから、私は報告します – Simon
はい、それは少し厄介なものになります。私はそれを関数にすると思いますし、ロード時には、コンテンツに '.equal-height 'などの内容が含まれていると関数を実行します。同じ関数が別のページをロードする必要がある場合はトリッキーになります:) –
ほぼあります! "pageshow"イベントにバインドすると、すべてのui-barの正確な高さが得られます。しかし、これは1〜2秒後に新しい高さが適用されるという醜い副作用があるので、 "最も高い高さ"が適用される前の元の高さを参照します。また、これはajaxをナビゲートする場合にのみ機能します。ページ全体をリロードした後、再び動作しません。最初はjquery mobileで作業するのがすごく奇妙です。私が好きかどうかはまだ分かりません。それでも私の最初の問題を解決したので、あなたの答えを答えたとマークしました。ありがとう! – Simon