This will make it easy to quickly test key settings by going to:
jquerymobile.com/test/config
This is a bit fragile because refreshing or hitting a link with
rel=external or ajax=false will lose the setting.
normally I wouldn't accept re-ordering of tests as a solution to any problem, but the issue here was multiple changepage events overlapping during our tests. generally we have browser state issues in our test suite and we need a general solution for them which will come post 1.0
The docs incorrectly stated that the icon position could be set per
link, but this is intended as a global setting for the navbar parent.
This is working as designed and helps with visual consistency. If icon
positioning needs to be be adjusted per link, you will need to manually
apply the right classes through JS and may need to tweak CSS because
top/bottom and left/right positions have different heights.
- Fixed a bug in the hashchange handler for the pushstate/replacestate plugin that was incorrectly resolving hashchanges for ids against the current location.href, which could be a different document. We now resolve id hashes against the document URL.
- Modified changePage() so that it sets the settings.dataUrl option to the documentUrl, when navigating to the first-page of the application document. This prevents any id on the first-page from being added to the location hash. This means that URLs that used to be produced like this:
http://site.com/apps/#first-page-id
will now display as:
http://site.com/apps/
Developers that wish to get the old behavior back can register a pagebeforechange handler and do something like this:
$( document ).bind( "pagebeforechange", function( e, data ) {
var toPage = data.toPage;
if ( typeof toPage === "object" && !data.options.dataUrl && toPage[ 0 ] === $.mobile.firstPage[ 0 ] && toPage[ 0 ].id ) {
data.options.dataUrl = "#" + toPage[ 0 ].id;
}
});
The handler above will make sure that any page changes to the first-page will always display as:
http://site.com/apps/#first-page-id