Thanks onlyfrank,
I saw the commits for the sticky footer today, will pull and integrate them in. the toolbar plugins we have right now are a little redundant for ipad/desktop view, so i am thinking of suggesting or rolling one out myself, but i won't have time to do it anytime soon - need to finish this first :)
I forgot to mention that i also edited some of core jQm - i namespaced some of the event bindings so i could unbind them. I highlighted this to the core team and they liked the idea (namespacing bindings) so hopefully it'll go into core. also, I only have two main pages in the demo, so some of the links may 'seem' like they don't work, it's only coz i'm linking to the same two pages, so when u click on a link whose page is already showing, nothing happens.
hashchanges and history now works - you can deeplink to a page, and back and forward buttons also work. you can't deeplink to a side panel page tho - that breaks the plugin for now. I'm going to test form submissions soon - will post more as i go.
here are brief features:
1) you define a side panel and a main panel using a div with data-role="panel" and data-id attribute. currently only supports the ipad splitview, but once code is ok, I'll start working on allowing various different panel layouts.
2) links in a certain panel (ex in the side panel) can load pages in another panel using the data-panel attribute pointing to the panel using its data-id. if no data-panel is defined, the page loads in the same panel the link is in. this allows for some interesting stuff like loading email lists on the side panel, and displaying the individual emails in the main panel.
3) you may not want side panels to be tracked in history - so the data-hash attribute set on the panel div will handle this. data-hash="true" is default, meaning any page changes on this panel will trigger a hashChange (history record) and a back button is created on the next page. data-hash="false" means no hashChange on any page changes on this panel, and no back button created (not finished with the back button yet for this). data-hash="crumbs" means no hashChange, but a back button will be created that links to the previous page on that panel - the back button uses the previous page's title as its title, just like the ipad.
4) uses jQm's in built touch scroll library for scrolling on the ipad - you can find the js file in /experiments/scrollview in the jquery-mobile source. detects if your browser supports touch or not, and if it does, the two panels scroll using touch. if it doesn't then it scrolls using your mouse.
It's still a work in progress, i have a couple more things to test before i can really say it's usable. comments suggestions are absolutely welcome! thanks!
Asyraf Abdul Rahman,
CEO, CS8,
www.cs8.my