jQM - Popup opening

HTML

<div data-role="page" id="indexpage">
  <div data-role="popup" data-history="false" id="appPopup">test popup</div>
</div>

JavaScript

/** Workaround for the jQuery Mobile popup opening bug.
 * @param {string} id The DOM id of the popup div. */
function popupSturdyOpen (id) {
  var reopener = function() {$('#' + id) .popup ('open')}
  $('#' + id) .on ('popupafterclose', reopener) .popup ('open')
  window.setTimeout (function() {$('#' + id) .unbind ('popupafterclose', reopener)}, 2000)
}

$("#indexpage") .on ("pageshow", function () {
  popupSturdyOpen ('appPopup')
});

// log popup events
$(document).on("popupcreate popupinit popupafteropen popupafterclose", "[data-role=popup]", function (e) {
    console.log(e.target.id + " -> " + e.type);
});