Hi,
I'd like to make a suggestion, which if you guys think is ok I'd like to try out in my own fork and let you know how it turns out.
I'm working on making a SplitView for jQueryMobile that will allow pages to be rendered in two columns for tablets(e.g. ipad) and desktops, and a standard single column for mobile apps - using media query to determine how to render the page layouts.
I'm finding that the fixHeaderFooter toolbars give me a lot of problems, with the css settings for top not getting calculated properly (because what i do causes it not calculate right)... but particularly since all the hiding and showing is no longer necessary in a tablet and desktop layout, but am finding it difficult to unbind all the bindings to scrollstart, silentstop, silentscroll, resize etc since they're not named and i don't want to unbind anything else.
also, I've a feeling the entire plugin can be quite redundant for a desktop/tablet layout - so may want to roll out my own plugin for it, which I would gladly share...
so here's my suggestion:
1) name the event handlers so that other plugin devs can unbind them if they want to. this enables them to override specific functionality within the plugins and/or
2) at mobileinit, set an array that can be overriden that tells jQuery Mobile what plugin methods it should run for all the core plugins. Example:
$.mobile.plugins = {
toolbars: fixHeaderFooter(),
buttons: buttonMarkup(),
lists: $.mobile.listview()
}
(apologies if this syntax is wrong, I'm still a little new to jQuery)
this allows other developers to roll out their own plugins for core features by just binding into the mobileinit event. In fact, this also allows core to do something like this:
toolbars: $.mobile.media("screen and (min-width: 768px)") ? fixHeaderFooter() : standardHeaderFooter(),
so you can create different methods that handle certain features differently according to media query.
hope to hear from the team! looking forward to contributing
asyraf