Imは、さまざまなサイズの要素をmasonryを使用して追加することができる「ボード」を整理しようとしています。新しい要素を追加する可能性を止める方法コンテナがいっぱいになり、要素がオーバーフローし始める場合要素の追加 - 要素がコンテナのオーバーフローを開始したときに追加を停止する
コード:
HTML
<input id="width" value="0" type="text"></input>
<input id="height" value="0" type="text"></input>
<input id="mLeft" value="0" type="text"></input>
<input id="mRight" value="0"type="text"></input>
<button>Add container</button>
jQueryの
$('button').click(function(){
var $pWidth = jQuery("#width").val();
var $truePWidth = $pWidth * 15;
var $pHeight = jQuery("#height").val();
var $truePHeight = $pHeight * 15;
var $mLeft = jQuery("#mLeft").val();
var $trueMLeft = $mLeft * 15;
var $mRight = jQuery('#mRight').val();
var $trueMRight = $mRight * 15;
$container.append("<div class='box'><div class='remove'></div></div>").masonry('reload', function(){
$(".box").each(function(i) {
$(this).attr("id", "item"+(i+1));
});
$($container).children('.box:last-child').css({'height' : $truePHeight + 'px', 'width': $truePWidth + 'px', 'margin-right' : $trueMRight + 'px', 'margin-left' : $trueMLeft + 'px' });
$container.masonry('reload');
});
});
要素(■)が追加される容器(変数$コンテナ= #container)は、高い1600pxあります。
ありがとうございます!
/jonas
これをカットする必要がありますか?オーバーフローさせたくない場合(レイアウトをねじ込む場合など)、または最大数の追加を設定したい場合は不要ですか? – Anthony
コードに見られるように、私は新しい要素を追加するボタンのクリックイベントを持っています。私がしたいのは、コンテナがいっぱいになるとボタンを無効にすることです。今はちょうどオーバーフローを使っています:隠されていますが、それは本当にそれを解決しません。 – Jonas