Phonegap navigator.app.backHistory / window.history.back无法在Blackberry Playbook上运行

时间:2012-02-06 05:54:11

标签: cordova blackberry browser-history blackberry-playbook

在黑莓手册上,正常 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 个答案:

答案 0 :(得分:6)

您可以编写一个可以根据定义的函数执行操作的泛型后退函数,而不是覆盖window.history.back:

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

我不确定这是否能解答您的问题,但我一直在使用此方法在移动设备和桌面浏览器上启用测试。