2013-05-04 198 views
1

我有一個應用程序,我在程序中向頁面添加一個後退按鈕。這意味着第一頁上不會有後退按鈕。但是,應用程序本身有很多種進入應用程序的方式,換句話說,我可以獲得通知,並在觸摸該通知時將其發送到應用程序中的特定區域。該區域不會有返回主頁的後退按鈕,如果我手動添加一個,它將與編程後退按鈕發生衝突。jquery手機後退按鈕

所以我正在尋找一種方法來添加一個按鈕,只有當頁面加載第一次和其他時間,當您訪問後退按鈕執行預期的頁面時返回到首頁。

回答

2

我假設您使用data-add-back-btn=true來動態地將data-rel=back按鈕添加到您的頁面。因此,有可能首先檢查活動頁面中是否沒有data-rel=back,其次,不是您的首頁頁面。

還有一件事,當您離開該頁面時,您需要刪除該按鈕以避免與JQM生成的頁面重疊。

Demo

var backbtn = '<a href="#home" data-icon="arrow-l" data-iconpos="notext" class="backbtn"></a>'; 

$(document).on('pagebeforeshow', function() { 
var activePage = $.mobile.activePage; 
if (activePage.find('[data-rel=back]').length === 0 && activePage[0].id != 'home') { 
    activePage.find('[data-role=header] h1').before(backbtn); 
} 
$('[data-role=page]').trigger('pagecreate'); 
$(document).on('pagebeforehide', function() { 
    $('a.backbtn').remove(); 
}); 
}); 
+0

我在想,如果這是有道理的做這種方式。當您按下時應該能夠導航到的唯一頁面是主頁。然後,它應該只是一個簡單的更改頁面功能添加到按鈕。這件事就像在facebook應用中發佈帖子的通知。您應該能夠通過回推通知的唯一地方是首頁。 – 2013-05-04 14:21:02

+0

@KernElliott這個例子使得按鈕看起來像本地的,當放置在標題中時。此外,您需要檢查此頁面是否有按鈕,並且它不是主頁。使用ChangePage還需要一些代碼。 – Omar 2013-05-04 14:26:33