Autor | Zpráva | ||
---|---|---|---|
Sylar Profil |
#1 · Zasláno: 29. 12. 2011, 12:58:29
Zdravím,
udělal jsem na stránce možnost přesouvání boxů v rámci několika sloupců - http://jqueryui.com/demos/sortable/#portlets . Přemýšlím jak jednoduše zpracovat data a zjistit aktuální pozici daných prvků. Jisté řešení mi nabízí funkce update (http://jqueryui.com/demos/sortable/#event-update), ale ta mi ukazuje pouze absolutní pozice jednotlivcýh boxů (left, top) a mě by stačilo pouze pořadí jednotlivých boxů. Což by se samozřejmě dalo podle pozic vypočítat, ale přijde mi to dost nešikovné a pracné. Lze přímo z jQuery dostat "seznam" jednotlivých boxů jak jdou za sebou nebo má někdo vymyšlený jiný, lepší způsob? |
||
Chamurappi Profil |
#2 · Zasláno: 29. 12. 2011, 15:27:42
Reaguji na Sylara:
„ze sortable jquery“ „přímo z jQuery dostat“ Je to jQuery UI, ne jQuery. „ale přijde mi to dost nešikovné a pracné“ Stejně používáš jQuery UI, tam je takových nešikovností mnohem víc :-) Jejich ukázka mi mimochodem dělá v Exploreru 7 pěkné blbosti, mezi boxy se objevuje nepochopitelný průvan, místo zaujímané boxem se při jeho uchopení scvrkne… „nebo má někdo vymyšlený jiný, lepší způsob?“ Když jsem dělal něco podobného já, zjišťoval jsem pozici v DOMu. Každému prvku jsem dal unikátní atribut, podle kterého jsem poznal, co je zač, a pak jsem projel jednotlivé sloupce, bral <div> za <div> em a zaznamenával si jejich atribut do polí. Podobný postup by asi měl fungovat i u tebe.
|
||
Medvídek Profil |
#3 · Zasláno: 29. 12. 2011, 15:56:24 · Upravil/a: Medvídek
Sylar:
.sortable('toArray') Ti seřadí do pole IDčka těch boxů, podle jejich aktuální pozice.
http://docs.jquery.com/UI/Sortable#method-toArray |
||
Sylar Profil |
#4 · Zasláno: 29. 12. 2011, 16:55:24
Medvídek:
díky. to je ono. Ještě narážím na jeden problém a to ten, že funkce update, kterou používám pro odesílání polí na server, se provede dvakrát pokud přehodím prvek v rámci dvou sloupců. Pokud přehazuji prvky pouze v rámci jednoho sloupce, provede se jen jednou - OK, ale pokud přehodím prvek zp ravého do levého sloupce, funkce se provede dvakrát a mě se tudíž zbytečně odešlou data dvakrát i na server. |
||
Časová prodleva: 13 let
|
0