1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
---|
2 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
---|
3 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
---|
4 | <head> |
---|
5 | <title>script.aculo.us sortable functional test file</title> |
---|
6 | <meta http-equiv="content-type" content="text/html; charset=utf-8" /> |
---|
7 | <script src="../../lib/prototype.js" type="text/javascript"></script> |
---|
8 | <script src="../../src/scriptaculous.js" type="text/javascript"></script> |
---|
9 | <script src="../../src/unittest.js" type="text/javascript"></script> |
---|
10 | <link rel="stylesheet" href="../test.css" type="text/css" /> |
---|
11 | <style type="text/css" media="screen"> |
---|
12 | #thelist li { background: green; margin:5px; padding: 30px; } |
---|
13 | div.dropmarker { |
---|
14 | height:6px; |
---|
15 | width:200px; |
---|
16 | background: url(dropmarker.png) left top; |
---|
17 | margin-top:-3px; |
---|
18 | margin-left:-5px; |
---|
19 | z-index:1000; |
---|
20 | overflow: hidden; |
---|
21 | } |
---|
22 | </style> |
---|
23 | <script type="text/javascript" charset="utf-8"> |
---|
24 | var callsToOnUpdate = 0; |
---|
25 | </script> |
---|
26 | </head> |
---|
27 | <body> |
---|
28 | <ul id="thelist"> |
---|
29 | <li id="thelist_1">Hey there! I'm item#1</li> |
---|
30 | <li id="thelist_2">Hey there! I'm item#2</li> |
---|
31 | <li id="thelist_3">Hey there! I'm item#3</li> |
---|
32 | </ul> |
---|
33 | |
---|
34 | <a href="#" onclick="Sortable.create('thelist',{onUpdate:function(){$('debug').update(++callsToOnUpdate+' call(s) to onUpdate')}});return false;">Create sortable</a> | |
---|
35 | <a href="#" onclick="Sortable.destroy('thelist');return false;">Destroy sortable</a> | |
---|
36 | <a href="#" onclick="alert(Sortable.serialize('thelist'));return false;">Serialize sortable</a> |
---|
37 | |
---|
38 | <ul id="thehandlelist"> |
---|
39 | <li id="thehandlelist_1">Hey there! I'm item#1<span class="handle">HANDLE</span> |
---|
40 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
41 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
42 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
43 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
44 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
45 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
46 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
47 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
48 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
49 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
50 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
51 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
52 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
53 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
54 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
55 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
56 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
57 | </li> |
---|
58 | <li id="thehandlelist_2">Hey there! I'm item#2<span class="handle">HANDLE</span> |
---|
59 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
60 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
61 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
62 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
63 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
64 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
65 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
66 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
67 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
68 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
69 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
70 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
71 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
72 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
73 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
74 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
75 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
76 | </li> |
---|
77 | <li id="thehandlelist_3">Hey there! I'm item#3<span class="handle">HANDLE</span> |
---|
78 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
79 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
80 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
81 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
82 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
83 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
84 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
85 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
86 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
87 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
88 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
89 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
90 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
91 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
92 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
93 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
94 | <span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span><span>S</span> |
---|
95 | </li> |
---|
96 | </ul> |
---|
97 | |
---|
98 | <a href="#" onclick="Sortable.create('thehandlelist',{handle:'handle',onUpdate:function(){$('debug').update(++callsToOnUpdate+' call(s) to onUpdate')}});return false;">Create sortable</a> | |
---|
99 | <a href="#" onclick="Sortable.destroy('thehandlelist');return false;">Destroy sortable</a> | |
---|
100 | <a href="#" onclick="alert(Sortable.serialize('thehandlelist'));return false;">Serialize sortable</a> |
---|
101 | |
---|
102 | <p id="debug">no calls to onUpdate</p> |
---|
103 | |
---|
104 | <ul id="sortable_elements_handles"> |
---|
105 | <li id="s_1">s1 <span class="handle" id="h_1">handle</span></li> |
---|
106 | <li id="s_2">s2 <span class="handle" id="h_2">handle</span></li> |
---|
107 | <li id="s_3">s3 <span class="handle" id="h_3">handle</span></li> |
---|
108 | <li id="s_4">s4 <span class="handle" id="h_4">handle</span></li> |
---|
109 | <li id="s_5">s5 <span class="handle" id="h_5">handle</span></li> |
---|
110 | <li id="s_6">s6 <span class="handle" id="h_6">handle</span></li> |
---|
111 | <li id="s_7">s7 <span class="handle" id="h_7">handle</span></li> |
---|
112 | <li id="s_8">s8 <span class="handle" id="h_8">handle</span></li> |
---|
113 | <li id="s_9">s9 <span class="handle" id="h_9">handle</span></li> |
---|
114 | <li id="s_10">s10 <span class="handle" id="h_10">handle</span></li> |
---|
115 | </ul> |
---|
116 | |
---|
117 | <script type="text/javascript" charset="utf-8"> |
---|
118 | function initializePreselected(){ |
---|
119 | Sortable.create('sortable_elements_handles',{ |
---|
120 | handle: 'handle', |
---|
121 | handles: ['h_1','h_2','h_3','h_4','h_5','h_6','h_7','h_8','h_9','h_10'], |
---|
122 | elements: ['s_1','s_2','s_3','s_4','s_5','s_6','s_7','s_8','s_9','s_10'] |
---|
123 | }); |
---|
124 | } |
---|
125 | function initializeNormal(){ |
---|
126 | Sortable.create('sortable_elements_handles',{ |
---|
127 | handle: 'handle' |
---|
128 | }); |
---|
129 | } |
---|
130 | function benchmark(method,times){ |
---|
131 | var now = new Date(); |
---|
132 | times.times(method); |
---|
133 | $('benchmark').update((new Date()-now)+'ms'); |
---|
134 | } |
---|
135 | </script> |
---|
136 | |
---|
137 | 20 times: <a href="#" onclick="benchmark(function(){initializePreselected()},20);return false">Init with Preselection</a> | |
---|
138 | <a href="#" onclick="benchmark(function(){initializeNormal()},20);return false">Init normally</a> <span id="benchmark"></span> |
---|
139 | |
---|
140 | </body> |
---|
141 | </html> |
---|