fix: inifite loop because page & base are undefined in parsePage

This fixes the infinite loop, which was cause by `page` and `base` being undefined.

Explanation:  
The method was setup to look for a page by `data-url` (via getPage) to set `page` and for `data-external-page` to determine `base`. 

On **pagebeforechange** on the first loop through parsePage a non-existent page would cause both `page` and `data` to be undefined, hence this would be the place to generate the page and trigger a new changePage (to this page). 

On the following **pagebeforechange**, the page would have been appended to the DOM and either you (manually) or JQM would have set both `data-url` and `data-external-page`, so `page` and `base` are defined and JQM would finish the transition.

In your case, the pages are already in the DOM but missing both `data-url` and `data-external-page`, so you will loop into infinity.

The fix should be the same for both branches. When loading page externally, make sure JQM sets both attributes and that on the first test ("stop us, JQM go") `page` and `base` are defined.