2
jQuery Uiを使用して、ドラッグしてサイズを変更するグリッドを作成していますが、エレメントのコンテンツ、テキスト、画像のタイプが異なります。要素の高さを変更するとコンテンツの高さでは更新されません。例えば新しい画像の高さを再計算しない。サイズ変更時にラップコンテンツdivを更新するには?
HTML
<div class="column">
<div class="portlet">
<div class="portlet-header">Feeds</div>
<div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div>
</div>
<div class="portlet">
<div class="portlet-header">News</div>
<div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div>
</div>
</div>
<div class="column">
<div class="portlet">
<div class="portlet-header">Shopping</div>
<div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div>
</div>
</div>
<div class="column">
<div class="portlet">
<div class="portlet-header">Links</div>
<div class="portlet-content"><img src="https://s-media-cache-ak0.pinimg.com/736x/12/64/da/1264da4a3f18207dc22592102abae40d--frangipani-tattoo-plumeria-flowers.jpg"></div>
</div>
</div>
JS
$(function() {
$(".column").sortable({
connectWith: ".column",
placeholder: 'ui-state-highlight',
forcePlaceholderSize: true
});
$(".portlet").resize(function() {
var myHeight = $(".portlet-content").scrollHeight;
$(".portlet").outerHeight(myHeight);
});
$(".portlet").resizable().addClass("ui-widget ui-widget-content ui-helper-clearfix ui-corner-all")
.find(".portlet-header")
.addClass("ui-widget-header ui-corner-all")
.prepend("<span class='ui-icon ui-icon-minusthick'></span>")
.end()
.find(".portlet-content");
$(".portlet-header .ui-icon").click(function() {
$(this).toggleClass("ui-icon-minusthick").toggleClass("ui-icon-plusthick");
$(this).parents(".portlet:first").find(".portlet-content").toggle();
});
$(".column").disableSelection();
});
JsFiddle here画像でボックスのサイズを変更してみてください、あなたはそれがOKのように見える
を動作するかどうか確認してください。テキストをラップしない行を修正するために、クラス '.portlet'に' overflow:hidden; 'を追加することもできます。 – ivo