Skip to content

Commit 98e7698

Browse files
committed
Update pages. See main branch for changes
1 parent f048a8c commit 98e7698

File tree

5 files changed

+251
-126
lines changed

5 files changed

+251
-126
lines changed

index.html

Lines changed: 67 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ <h1>jQuery Sortable</h1>
7979
Download
8080
<a href='js/jquery-sortable-min.js'>minified</a>
8181
version
82-
(7.7 kb)
82+
(8.3 kb)
8383
</small>
8484
</p>
8585
</div>
@@ -543,14 +543,21 @@ <h2>Connected lists with limited drop targets</h2>
543543
<div class='row'>
544544
<div class="span12 example">
545545
<div class="CodeRay">
546-
<div class="code"><pre><span class="predefined">$</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">ol.limited_drop_targets</span><span class="delimiter">&quot;</span></span>).sortable({
546+
<div class="code"><pre><span class="keyword">var</span> group = <span class="predefined">$</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">ol.limited_drop_targets</span><span class="delimiter">&quot;</span></span>).sortable({
547547
<span class="key">group</span>: <span class="string"><span class="delimiter">'</span><span class="content">limited_drop_targets</span><span class="delimiter">'</span></span>,
548548
<span class="function">isValidTarget</span>: <span class="keyword">function</span> (item, container) {
549549
<span class="keyword">if</span>(item.is(<span class="string"><span class="delimiter">&quot;</span><span class="content">.highlight</span><span class="delimiter">&quot;</span></span>))
550550
<span class="keyword">return</span> <span class="predefined-constant">true</span>
551551
<span class="keyword">else</span> {
552552
<span class="keyword">return</span> item.parent(<span class="string"><span class="delimiter">&quot;</span><span class="content">ol</span><span class="delimiter">&quot;</span></span>)[<span class="integer">0</span>] == container.el[<span class="integer">0</span>]
553553
}
554+
},
555+
<span class="function">onDrop</span>: <span class="keyword">function</span> (item, container, _super) {
556+
<span class="predefined">$</span>(<span class="string"><span class="delimiter">'</span><span class="content">#serialize_output</span><span class="delimiter">'</span></span>).text(group.sortable(<span class="string"><span class="delimiter">&quot;</span><span class="content">serialize</span><span class="delimiter">&quot;</span></span>).get().join(<span class="string"><span class="delimiter">&quot;</span><span class="char">\n</span><span class="delimiter">&quot;</span></span>))
557+
_super(item, container)
558+
},
559+
<span class="function">serialize</span>: <span class="keyword">function</span> (parent, children, isContainer) {
560+
<span class="keyword">return</span> isContainer ? children.join() : parent.text()
554561
}
555562
})</pre></div>
556563
</div>
@@ -562,8 +569,15 @@ <h2>Connected lists with limited drop targets</h2>
562569
<strong>Limit the drop targets</strong>
563570
of the dragged item
564571
</li>
572+
<li>
573+
Customize
574+
<strong>serialization</strong>
575+
of the lists
576+
</li>
565577
</ul>
566578
<p><div class="btn btn-primary show-code" data-toggle="button"><i class="icon-chevron-down"></i> show me the code</div></p>
579+
<h3>Serialize result</h3>
580+
<pre id='serialize_output'></pre>
567581
</div>
568582
<div class='span4'>
569583
<ol class='limited_drop_targets vertical'>
@@ -885,6 +899,16 @@ <h3>
885899
<code>.sortable("disable")</code>
886900
</h3>
887901
<p>Disable all instantiated sortables in the set of matched elements</p>
902+
<h3>
903+
<code>.sortable("serialize")</code>
904+
</h3>
905+
<p>
906+
Serialize all selected containers. Returns a
907+
<code>jQuery</code>
908+
object . Use
909+
<code>.get()</code>
910+
to retrieve the array, if needed.
911+
</p>
888912
</div>
889913
</div>
890914
<h2 id='group-options'>Group options</h2>
@@ -902,7 +926,7 @@ <h2 id='group-options'>Group options</h2>
902926
</td>
903927
<td>
904928
<div class="CodeRay">
905-
<div class="code"><pre><span class="keyword">function</span> (placeholder, container) {
929+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$placeholder</span>, container) {
906930
}</pre></div>
907931
</div>
908932

@@ -943,20 +967,31 @@ <h2 id='group-options'>Group options</h2>
943967
</td>
944968
<td>
945969
<div class="CodeRay">
946-
<div class="code"><pre><span class="keyword">function</span> (item, container) {
970+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$item</span>, container) {
947971
<span class="keyword">return</span> <span class="predefined-constant">true</span>
948972
}</pre></div>
949973
</div>
950974

951975
</td>
952976
<td> Check if the dragged item may be inside the container. Use with care, since the search for a valid container entails a depth first search and may be quite expensive.</td>
977+
</tr><tr><td>
978+
<code>onCancel</code>
979+
</td>
980+
<td>
981+
<div class="CodeRay">
982+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$item</span>, container, _super) {
983+
}</pre></div>
984+
</div>
985+
986+
</td>
987+
<td> Executed before onDrop if placeholder is detached. This happens if pullPlaceholder is set to false and the drop occurs outside a container.</td>
953988
</tr><tr><td>
954989
<code>onDrag</code>
955990
</td>
956991
<td>
957992
<div class="CodeRay">
958-
<div class="code"><pre><span class="keyword">function</span> (item, position, _super) {
959-
item.css(position)
993+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$item</span>, position, _super) {
994+
<span class="predefined">$item</span>.css(position)
960995
}</pre></div>
961996
</div>
962997

@@ -967,12 +1002,12 @@ <h2 id='group-options'>Group options</h2>
9671002
</td>
9681003
<td>
9691004
<div class="CodeRay">
970-
<div class="code"><pre><span class="keyword">function</span> (item, container, _super) {
971-
item.css({
972-
<span class="key">height</span>: item.height(),
973-
<span class="key">width</span>: item.width()
1005+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$item</span>, container, _super) {
1006+
<span class="predefined">$item</span>.css({
1007+
<span class="key">height</span>: <span class="predefined">$item</span>.height(),
1008+
<span class="key">width</span>: <span class="predefined">$item</span>.width()
9741009
})
975-
item.addClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragged</span><span class="delimiter">&quot;</span></span>)
1010+
<span class="predefined">$item</span>.addClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragged</span><span class="delimiter">&quot;</span></span>)
9761011
<span class="predefined">$</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">body</span><span class="delimiter">&quot;</span></span>).addClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragging</span><span class="delimiter">&quot;</span></span>)
9771012
}</pre></div>
9781013
</div>
@@ -984,8 +1019,8 @@ <h2 id='group-options'>Group options</h2>
9841019
</td>
9851020
<td>
9861021
<div class="CodeRay">
987-
<div class="code"><pre><span class="keyword">function</span> (item, container, _super) {
988-
item.removeClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragged</span><span class="delimiter">&quot;</span></span>).attr(<span class="string"><span class="delimiter">&quot;</span><span class="content">style</span><span class="delimiter">&quot;</span></span>,<span class="string"><span class="delimiter">&quot;</span><span class="delimiter">&quot;</span></span>)
1022+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$item</span>, container, _super) {
1023+
<span class="predefined">$item</span>.removeClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragged</span><span class="delimiter">&quot;</span></span>).attr(<span class="string"><span class="delimiter">&quot;</span><span class="content">style</span><span class="delimiter">&quot;</span></span>,<span class="string"><span class="delimiter">&quot;</span><span class="delimiter">&quot;</span></span>)
9891024
<span class="predefined">$</span>(<span class="string"><span class="delimiter">&quot;</span><span class="content">body</span><span class="delimiter">&quot;</span></span>).removeClass(<span class="string"><span class="delimiter">&quot;</span><span class="content">dragging</span><span class="delimiter">&quot;</span></span>)
9901025
}</pre></div>
9911026
</div>
@@ -1012,6 +1047,22 @@ <h2 id='group-options'>Group options</h2>
10121047

10131048
</td>
10141049
<td> If true, the position of the placeholder is calculated on every mousemove. If false, it is only calculated when the mouse is above a container.</td>
1050+
</tr><tr><td>
1051+
<code>serialize</code>
1052+
</td>
1053+
<td>
1054+
<div class="CodeRay">
1055+
<div class="code"><pre><span class="keyword">function</span> (<span class="predefined">$parent</span>, <span class="predefined">$children</span>, parentIsContainer) {
1056+
<span class="keyword">var</span> result = <span class="predefined">$</span>.extend({}, <span class="predefined">$parent</span>.data())
1057+
<span class="keyword">if</span>(<span class="predefined">$children</span>[<span class="integer">0</span>])
1058+
result.children = <span class="predefined">$children</span>
1059+
<span class="keyword">delete</span> result.sortable
1060+
<span class="keyword">return</span> result
1061+
}</pre></div>
1062+
</div>
1063+
1064+
</td>
1065+
<td> Specifies serialization of the container group. The pair $parent/$children is either container/items or item/subcontainers</td>
10151066
</tr>
10161067
</tbody>
10171068
</table>
@@ -1092,6 +1143,9 @@ <h1>Alternatives</h1>
10921143
<li>
10931144
<a href='http://jqueryui.com/demos/sortable/'>jQuery UI sortable</a>
10941145
</li>
1146+
<li>
1147+
<a href='http://dbushell.github.com/Nestable/'>Nestable (requires no jQuery UI)</a>
1148+
</li>
10951149
<li>
10961150
<a href='http://mjsarfatti.com/sandbox/nestedSortable/'>nestedSortable</a>
10971151
(an extension of jQuery UI)

0 commit comments

Comments
 (0)