2013-03-22 6 views
2

Я разрабатываю приложение для телефона Windows. Само приложение прекрасно работает, за исключением кнопки «Назад» (устройства). Кнопка назад может вернуться назад до определенной точки, где она останавливается. На этом этапе он показывает загрузчик AJAX. Если кнопка «Назад» снова нажата, приложение закрывается.Phonegap + jquery mobile + windows phone: Задняя кнопка проблема

Структура моего приложения выглядит следующим образом (я использую структуру многостраничных):

App нагрузки -> пользователь должен выбрать язык -> Главный экран с кнопками на другие страницы

На главном экране пользователь может перейти дальше в приложение. Кнопка «Назад» работает правильно, пока главный экран не появится снова.

Вот пример того, как главный экран выглядит следующим образом:

<div data-role="page" id="zero"> 
    <div data-role="content"> 
    <a href="#one" data-role="button" id="button-one" data-icon="plus">button-one</a> 
    <a href="#two" data-role="button" id="button-two" data-icon="plus">button-two</a> 
    <a href="#three" data-role="button" id="button-three" data-icon="plus">button-three</a> 
    <a href="javascript:randomFunction();" data-role="button" id="button-four" data-icon="plus">button-four</a> 
    </div> 
</div> 

Я использую несколько кнопок, активирующих яваскрипт функцию. В конце этих функций я использую $.mobile.changePage("#four"); для перехода на страницу.

Все кнопки работают правильно, но при переходе на главный экран он останавливается и показывает загрузчик AJAX.

Может быть некоторая полезная информация - мое устройство готово функция выглядит следующим образом:

* Если LocalStorage содержит значение для языка, установить язык и перейти к главному экрану.

* Если localstorage не содержит значения для языка, перейдите на страницу, где пользователь может выбрать язык.

ПРИМЕЧАНИЕ: при нажатии кнопки «Назад» на странице, где пользователь может выбрать язык, приложение закрывается (нормально), после этого пользователь переходит на главный экран. Если здесь нажата кнопка «Назад», приложение также закрывается. Я нахожу это немного странным, потому что я думаю, что он должен вернуться к странице параметров языка.

ответ

3

Я не знаю, какую версию Windows Phone вы используете, но я столкнулся с некоторыми проблемами с кнопками с WP 8.1. Событие cordova back button не работает. Я сделал обычную реализацию кнопки для Windows Phone.

WinJS.Application.addEventListener("backclick", function (evt) { 
    if (!jQuery.mobile.activePage.is("#mainPage")) { 
     history.back(); 
     // Prevent the default behavior by returning true. evt.preventDefault doesn't cancel the external code. 
     return true; 
    } 
    // Execute the default behavior. 
    return false; 
};