2017-03-05 3 views
0
<div class='parent'> 
<div class='children'>1234</div> 
<div class='children'>5678</div> 
<div class='children'>9101</div> 
<div class='children'>I WANT TO BE FIRST</div> 
</div> 

jsein Element in die erste Position ziehen

$('.parent').sortable({ 
axis: "y", 
containment: "parent" 
}); 

Es ist ein Problem, ein Element in die erste Position ziehen, wenn containment zu parent eingestellt ist. Ich brauche diese Einstellungen, aber ich muss auch einige Elemente nach oben verschieben. Aber es scheint, dass es keinen Platz dafür gibt. Manchmal ist es möglich, aber hauptsächlich - es ist nicht möglich.

Ich habe versucht, mit der oberen/unteren Polsterung/Rand der parent - ohne Erfolg.

Problemumgehung?

Hier ist jsfiddle

Antwort

0

können Sie versuchen, über eine 'versteckte' Element hinzugefügt wird, etwa so:

<div class='parent'> 
    <div class='children hidden'></div> 
    <div class='children'>1234</div> 
    <div class='children'>5678</div> 
    <div class='children'>9101</div> 
    <div class='children'>I WANT TO BE FIRST</div> 
</div> 

mit diesem für CSS:

.hidden { 
    visibility: hidden; 
    height: 0; 
} 

Es wird nicht freigeben, wenn über das unsichtbare Element gezogen.

hier ist ein jsfiddle

+0

Hm, interessant. Es funktioniert, obwohl der versteckte el. wird eine Menge meiner bestehenden js und php Funktionen stören, aber ... sagen wir mal - gelöst – bonaca

0

Können Sie enthält div hinzufügen und die Eindämmung es eingestellt? z.B .:

<div id="outer"> 
<div class='parent'> 
<div class='children'>1234</div> 
<div class='children'>5678</div> 
<div class='children'>9101</div> 
<div class='children'>I WANT TO BE FIRST</div> 
</div> 
</div> 

zusammen mit:

$('.parent').sortable({ 
axis: "y", 
containment: "#outer" 
}); 

und

#outer { 
    padding-top: 1px; 
} 

, die mit der Geige zu arbeiten schien.

Verwandte Themen