javascript - How to close a dialog and return another link (not go back)? -
i want closed dialog open page2 not go page1.
i tried bind pagehide
event on dialog this, first goes page1 open page2, not direct open page2.
$("#dialog").bind("pagehide", function() { $.mobile.changepage("#page2"); });
<div data-role="page" id="page1"> <div data-role="content"> page1 <a href="#dialog" data-iconpos="notext" data-transition="slide">open dialog</a> <a href="#page2" data-iconpos="notext" data-transition="slide">open page2</a> </div> </div> <div data-role="page" id="page2"> <div data-role="content">page2</div> <a href="#page1" data-iconpos="notext" data-transition="slide">open page1</a> </div> <div data-role="dialog" id="dialog"> <div data-role="header"><h1>dialog</h1></div> <div>dialog</div> </div>
in jqm 1.4 define page dialog assigning data-dialog="true"
:
<div data-dialog="true" id="dialog">
then redirect on close, handle way:
$(document).on("pagecreate", "#page1", function () { $("body").on("pagecontainerbeforetransition", function (event, ui) { var oldpageid = $("body").pagecontainer("getactivepage").prop("id"); var newpageid = ui.topage.prop("id"); if (oldpageid == "dialog" && newpageid == "page1") { $("body").pagecontainer("change", "#page2", {"transition": "slide"}); return false; } }); });
basically catch page before transition, see if on dialog , going page1, if so, redirect page2.
Comments
Post a Comment