In Om, a good place to put things that need render to have been called is in IDidMount. You can get the DOM node for your component with (om/get-node owner) or (om/get-node owner ref) if you want a sprcific node with a :ref attribute set. On 17 Sep 2014 22:06, "Rostislav Svoboda" <rostislav.svob...@gmail.com> wrote:
> Concerning sortable tables, at the moment I do following (don't laugh): > > cp https://github.com/google/closure-library/blob/master/closure/goog/ui/ > tablesorter.js resources/public/js/out/goog/ui/ > > index.html: > <html> > ... > <body> > <div id="dbase0"></div> > <script src="http://fb.me/react-0.11.1.js"></script> > <script src="js/out/goog/base.js" type="text/javascript"></script> > <script src="js/main.js" type="text/javascript"></script> > <script type="text/javascript">goog.require("om_async > .client");</script> > <script type="text/javascript">goog.require("goog.ui.TableSorter > ");</script> > ... > </body> > </html> > > client.cljs: > (defn table-sorter [elem-id] > (let [el (gdom/getElement elem-id)] > (if (nil? el) > (println (str "ERROR: (gdom/getElement \"" elem-id "\") is nil")) > (let [component (TableSorter.) > alphaSort goog.ui.TableSorter.alphaSort > numericSort goog.ui.TableSorter.numericSort > reverseSort (goog.ui.TableSorter.createReverseSort numericSort > )] > (.decorate component el) > (.setSortFunction component 1 alphaSort) > (.setSortFunction component 2 reverseSort))))) > > ... > > ;; pseudo code here: > (dom/table #js {:id table-id :onMouseOver (fn [] (table-sorter table-id))} > (dom/thead nil > (apply dom/tr nil > (map #(dom/th nil %) table-header-values))) > (apply dom/tbody nil > (apply dom/tr nil > (map #(dom/td nil %) table-rows-values))) > > > > I.e. the table-sorter function makes my tables sortable but I have to > postpone it's execution until the dom/table get's rendered. > $(document).ready(..) and/or jayq.macros/ready don't work so I hack the > meat with :onMouseOver > > I started to fight with sortable tables just a few hours ago so some more > googling and/or your help might lead to better result. > Thx in advance > > Bost > > > On 17 September 2014 16:40, Daniel <doubleagen...@gmail.com> wrote: > >> I could have said that in a slightly less vitriolic way. Apologies. >> >> >> On Tuesday, September 16, 2014 8:45:37 AM UTC-5, Sam Ritchie wrote: >>> >>> I fully agree that with more features, the library would be useful to a >>> larger range of folks :) Pull requests welcome, as always. >>> >>> I'm developing each component as needed as I convert paddleguru.com >>> over to Om. The input components and basic tables, panels, buttons and >>> navbars came first; the rest are on their way. >>> >>> My thought on open source is, document well and release early. There's >>> no reason to keep all the existing stuff closed because the tables module >>> isn't fully sexed out. >>> >>> Daniel <doubleagen...@gmail.com> >>> September 16, 2014 at 7:17 AM >>> Good work. Although I hate to say it, It's of little use for most >>> projects without more out-of-the-box table options eg searchable, sortable, >>> paginated, never-ending. >>> >>> On Wednesday, August 27, 2014 2:05:27 PM UTC-5, Sam Ritchie wrote: >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To post to this group, send email to clojure@googlegroups.com >>> Note that posts from new members are moderated - please be patient with >>> your first post. >>> To unsubscribe from this group, send email to >>> clojure+unsubscr...@googlegroups.com >>> For more options, visit this group at >>> http://groups.google.com/group/clojure?hl=en >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to clojure+unsubscr...@googlegroups.com. >>> For more options, visit https://groups.google.com/d/optout. >>> Sam Ritchie <sritchi...@gmail.com> >>> August 27, 2014 at 1:05 PM >>> This release adds a bunch of new active components - notably, dropdown >>> buttons, split dropdown buttons and a navbar. The navbar allowed me to beef >>> up the doc site with a proper navbar, more pages and client-side javascript >>> navigation using Secretary and Html5 pushState: >>> >>> http://om-bootstrap.herokuapp.com >>> >>> Code: >>> >>> https://github.com/racehub/om-bootstrap >>> >>> Leiningen: >>> >>> [racehub/om-bootstrap "0.2.6"] >>> >>> >>> RELEASE NOTES: >>> >>> - Upgraded Clojurescript dependency on the doc site to get around this >>> bug: http://dev.clojure.org/jira/browse/CLJS-839. Added a note. >>> >>> This hash code bug was causing `bs-class-set`'s internal lookup in >>> `class-map` to sporadically fail in Safari 7.0.x. >>> >>> >From https://github.com/racehub/om-bootstrap/pull/13: >>> - `om-bootstrap.util/clone-with-props` can now "clone" proper om >>> components by injecting extra attributes into the om cursor. >>> - `:on-select` handlers on top level nav elements now get called if set, >>> along with the current nav-item `:on-select` handlers >>> >>> ### New Components >>> >>> - `dropdown-mixin` (mixins.cljs) >>> - `menu-item`, `dropdown-menu`, `dropdown` (button.cljs) >>> - `split` (ie, SplitButton) (button.cljs) >>> - `navbar` (ie, SplitButton) (button.cljs) >>> >>> >>> >>> -- >>> Sam Ritchie (@sritchie) >>> Paddleguru Co-Founder >>> 703.863.8561 >>> www.paddleguru.com >>> Twitter <http://twitter.com/paddleguru> // Facebook >>> <http://facebook.com/paddleguru> >>> >> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clojure@googlegroups.com >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+unsubscr...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with > your first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.