0
divの高さをdivの幅に比例させる関数を作成しようとしています。私はwindow.resizeでイベントをトリガーしようとしていますが、今まで運がありませんでした。 divの幅は現在、必要に応じてサイズ変更されますが、含まれるdiv要素の境界の外側で高さが変更され、重なり合って正しく折り返されません。どんな助けでも大歓迎です。前もって感謝します!Resize jQuery .cycle()div
あなたのHTMLを見ずにハードjQuery:
$(window).resize(function(){
$('.bgCycle').each(function(){
newHeight = $(this).parent('div').height();
$(this).height(newHeight);
$(this).children('div').height(newHeight);
})
})
CSS:
.bgCycle{
border:1px solid red;
position:relative;
width:100% !important;
}
.imgContainerDiv{
position:relative;
width:100% !important;
}
HTML:
<div class="bgCycle bgCycle1" style="z-index:1;">
<div class="imgContainerDiv">
<img src="http://localhost:8888/aleo/wp-content/uploads/2011/12/img1.jpg" style="width:100%;"/>
</div>
<div class="imgContainerDiv">
<img src="http://localhost:8888/aleo/wp-content/uploads/2011/12/img2.jpg" style="width:100%;"/>
</div>
</div>
<div class="bgCycle bgCycle2" style="z-index:1;">
<div class="imgContainerDiv">
<img src="http://localhost:8888/aleo/wp-content/uploads/2011/12/img3.jpg" style="width:100%;"/>
</div>
<div class="imgContainerDiv">
<img src="http://localhost:8888/aleo/wp-content/uploads/2011/12/img4.jpg" style="width:100%;"/>
</div>
</div>
私はHTML出力を追加しました。もし$(window).height();この場合に適用されます。問題は.imgContainerDivが大きくなっていますが、.bgCycleクラスのdivを含む各オブジェクトは幅のサイズを変更するだけです。私の理屈は、.bgCycleのサイズが.imgContainerDivの高さと同じ場合、同じ高さに割り当てられ、適切にサイズが変更されるということです。これらのdivの下に表示されているコンテンツは、ページをラッピングしていないことにも注意してください。 – negrelja
.bgCycle divには親divがないようですので、$(this).parent( 'div')。height()は機能しません。おそらくあなたがjsFiddle(http://jsfiddle.net/)を作ったのであれば、それはもっと意味があるだろうか? – SpoonNZ