2017-02-16 16 views
0

jQueryの.sortableにプレースホルダを表示して表示していません。 私jQueryでプレースホルダを表示/非表示

(また、最初のドロップゾーンが無効になっている、何卒ご了承下さい。)

(レイアウトを無視してください。私のライブサイトでは、それが良く見える...)JSFiddle

を参照してください。最大ドロップ数が4に達したときに、ドロップゾーンのプレースホルダ(右側の8個)を無効にすることをお勧めします。 両方の方法でドラッグ&ドロップすることができ、最大4滴に達したときに右側のプレースホルダの表示を無効にできました。 しかし、元のゾーンには4つ以上の要素があるため、私のコードでは、元のゾーンにプレースホルダがまったく表示されないことが考えられます。

私はこのように、/ドロップをドラッグしていたときに場所を決定するために余分な変数を使用して、この回避作業を試みた:

var item = $(ui.item); 
var from = item.parent().is("#draggable"); 

、その後のif /他を使用して/他の建設が検出できることがあれば私はどこにいて、プレースホルダを隠すか表示するかを決定します。

はそれを動作させることはできません....

ので、目標は、プレースホルダが常に右のdropzonesに4滴の最大数が発生した場合を除き、示さなければならないということです。

私はここに正しい軌道にいるかどうか知っていますか?

+0

'$(プレースホルダ).toggle()'あなたが欲しい機能が組み込まれていますで、完成品を見てください - ショーと隠します'if'を必要としない要素 – Bruno

答えて

0

OK、私は(ほとんど!)それを考え出し

を今後の参考のために:.sortableover:機能を使用していた、といくつかの場合、他のロジックで構築しなければなりませんでした。

右ペインに4つの子がある場合、常にプレースホルダが表示され、右ペインの1つの中でドラッグ&ドロップするとプレースホルダが表示されます。しかし、小さな問題が1つ残っています。右側のペインから右側のペインにドラッグ&ドロップすると、ペインが「いっぱい」になると、プレースホルダが表示されます。私が推測するいくつかのより多くのチェック、...

FWIWを行う必要があります。this JSFiddle

関連する問題