Tested Versions: jquery.mobile 1.2.0 beta and jquery.mobile 1.2.0 rc2
I am not sure what other possible combinations may cause this problem but let me describe my exact situation:
I have a popup that is launched by a button in the footer of the page and I use jinja to include that footer in every html pagge. (To get around id conflicts, I assigned a hash at first but then moved to using a class that I called the popup on programmatically, the problem happens in both situations). This popup contains an accordion which contains links to the other pages and the popup is displayed with a "slideup" transition.
In desktop Chrome only (latest I tested on was 22.0.1229.79 and it seems to work in Android 3.0's Chrome and on desktop FireFox 12), the popup stops launching if you do the following:
After a lot of console.log debugging I was able to find that the $mobile.popup.active mutex gets set in open and is supposed to be released in _closePrereqDone. The problem is that the after or during(?) the transition, the popup may not execute _closePrereqDone and so the mutex is never released and thus the popup cannot launch a 2nd time.
My workaround at the moment is unfortunately to set transition to "none".
Thanks for reporting the issue.
We really need a test page to be able to look into this. See our Contributing Guidelines for our JS Bin template.
Just try to reproduce the issue with a minimum of code and leaving out Jinja.
Did you test on OS X, Linux or Windows?
Does the same transition work when you test it with this page: http://jquerymobile.com/test/docs/pages/page-transitions.html ?
Sorry, I did not see the guideline. To recap:
a. Test Page: http://jsbin.com/uzaret/7
b. Steps to Reproduce:
c. Expected Outcome: The popup should appear no matter how many times you go back and forth
d. Actual Outcome: After navigating back to the first page, the popup no longer pops up.
e. Platform/Browser: Windows 7 Chrome 22.0.1229.79 (fails), Windows 7 Firefox 15 (works normally)
f. jQuery Mobile: 1.2.0 RC2, jQuery: 1.8.2
The transitions work on the page you provided but it did not have an example of popups which I believe this problem is specific to (having debugged far enough to find that it is the $.mobile.popup.active mutex that is preventing the popup from appearing again).
Thanks for the test page and additional information. I can confirm the issue. You said your work-around is setting transition "none", but I still see the issue when I do that. [update: Correction. I didn't set the transition to none on both pages. I now see that the issue indeed doesn't occur without the transition.] We are going to look into this.
I changed the test page a little bit to make it easier to test and to avoid non-unique ID's in the DOM (#navPopup): http://jsbin.com/uzaret/20
I can't reproduce this on Google Chrome Version 23.0.1271.6 dev ...
[hashchange functional test] Adding simple nav menu to study #5094
OK, I downgraded to Google Chrome Version 22.0.1229.79 and I still can't reproduce this problem. Running on Fedora 15 (Linux).
I can confirm it on Chrome Version 24.0.1283.0 on OS X
@gabrielschulhof - The test page I posted in my previous comment was still using transition "none" (my bad). I updated it. Can you test again?
[popup] Re-introduce interruptible transitions -- Fixes #5094