Phonegap navigator.app.backHistory / window.history.back не работает на Blackberry Playbook - PullRequest
3 голосов
/ 06 февраля 2012

В плейбуке Blackberry обычный window.history.back не работает.Протестировано на симуляторе ....

Итак, я попытался сделать это в index.html

window.history.back = navigator.app.backHistory;

Это дает управление функции Phonegap, но во время выполнения выдает ошибку:

"Error: Status=2 Message=Class App cannot be found"

Вот функция Phonegap (1.4.1):

/**
 * Navigate back in the browser history.
*/
App.prototype.backHistory = function() {
    // window.history.back() behaves oddly on BlackBerry, so use
    // native implementation.
    console.log("in backHistory");
    PhoneGap.exec(null, null, "App", "backHistory", []);
};

Есть какие-нибудь подсказки?

1 Ответ

6 голосов
/ 06 августа 2012

Вместо перезаписи window.history.back, вы можете написать общую функцию back, которая может действовать в зависимости от того, какая функция определена:

function goBack(){
    if (typeof (navigator.app) !== "undefined") {
        navigator.app.backHistory();
    } else {
        window.history.back();
    }
}

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

...