我有一个名为page1的页面。导航到page2之后,我想改变page1,以便下次访问它时,它会以某种方式显示(例如,背景颜色为蓝色)。我想在转换到page2结束后才进行此更改。
我试图在JQM 1.4中正确使用pagecontainerchange
事件,但这对我不起作用。我不想使用pagechange
事件,因为它已被弃用。
答案 0 :(得分:1)
更新了 FIDDLE
pagecontainer小部件的pagecontainershow事件在完成新页面的动画后运行。如果您可以检查toPage或prevPage属性,以确定您的来源和去向。
$( ":mobile-pagecontainer" ).on( "pagecontainershow", function( event, ui ) {
var prevPageID = ui.prevPage.prop("id");
if (prevPageID == "page1"){
toDoAfterTransition();
}
});
答案 1 :(得分:1)
小提琴更新:http://jsfiddle.net/sx9Rt/13/
使用此:
$( ":mobile-pagecontainer" ).on( "pagecontainerhide", function( event, ui ) {
$("#page1").css('background', 'blue');
});
答案 2 :(得分:0)
您可以使用Javascripts setInterval
函数来检查页面的可见性。
var prevPage;
$(document).on('click', 'a[data-role="button"]', function(){
prevPage = $(this).parents('[data-role="page"]');
var checkVisibility = setInterval(function() {
if(!$(prevPage).is(':visible')) {
$(prevPage).css('background', 'blue');
clearInterval(checkVisibility);
}
}, 10);
});