2
如果我有一個頁面結構,其中有三個或更多頁面,其中p1鏈接到鏈接到p3的p2,並且我雙擊p3上的後退按鈕。這將導致頁面返回到p2,然後立即返回到p1。雙擊後退按鈕會導致網站返回兩頁
有什麼辦法可以防止這種行爲嗎?
如果我有一個頁面結構,其中有三個或更多頁面,其中p1鏈接到鏈接到p3的p2,並且我雙擊p3上的後退按鈕。這將導致頁面返回到p2,然後立即返回到p1。雙擊後退按鈕會導致網站返回兩頁
有什麼辦法可以防止這種行爲嗎?
創建一個自定義的數據屬性點擊並保持點擊次數在。當您導航回頁面時,請重置計數器。
活生生的例子:
JS
$('#p3').live('pageshow', function(event, ui) {
$('#goBackOne').click(function() {
// if 0 (zero) clicks go back 1
if($('#goBackOne').attr('data-clicks') == 0) {
$('#goBackOne').attr('data-clicks', 1);
history.back(-1);
}
});
});
$('#p2').live('pageshow', function(event, ui) {
// reset to 0 (zero)
$('#goBackOne').attr('data-clicks', 0);
});
HTML
<div data-role="page" id="p1">
<a href="#p2" type="button">Go to page 2</a>
</div>
<div data-role="page" id="p2">
<a href="#p3" type="button">Go to page 3</a>
</div>
<div data-role="page" id="p3">
<a href="#" type="button" id="goBackOne" data-clicks="0">Back</a>
</div>
這是一個有趣的問題?你有沒有嘗試*單*在第3頁點擊後退按鈕? –
哈哈:)問題是,如果有人在慢速手機上運行應用程序,他們可能會認爲他們錯過了按鈕並再次單擊它。那會導致它回到兩頁。 – Naning