0

我检查 device.ready 本地存储用户是否已经登录。然后我需要导航到“home.html”或“login.html”,但我总是收到参考错误“Uncaught ReferenceError: ons is not defined”。

ons.navigator.pushPage('home.html');

我也试过 window.onload 或 $(document).ready 但我总是得到同样的错误。按钮点击工作正常。

感谢您的建议, Kornel

4

3 回答 3

3

ons.ready liste for cordova deviceready 事件和加载温泉

ons.ready(function(){

   myNavigator.pushPage('home.html');

});
于 2015-03-02T11:23:13.513 回答
1

有两个问题。一个是 Navigator 的范围,另一个是计时。不幸的是,当前的 Onsen-UI (ver 1.0.4) 没有触发页面加载。您必须等到导航器页面加载完毕。

例如,

    document.addEventListener('deviceready',onDeviceReady,false);

    function onDeviceReady() {
        checkScope();
    }

    function checkScope() {
        var element = document.querySelector( ".navigator-container");
        var scope = angular.element( element ).scope();
        if (scope && scope.getCurrentNavigatorItem && scope.getCurrentNavigatorItem() ) {
            scope.pushPage("page2.html");
        } else {
            setTimeout( checkScope , 100 );
        }

    }
于 2014-06-25T04:14:18.820 回答
0

请尝试以下代码:

menu.setMainPage('home.html', {closeMenu: true});
于 2016-04-14T23:46:13.623 回答