我检查 device.ready 本地存储用户是否已经登录。然后我需要导航到“home.html”或“login.html”,但我总是收到参考错误“Uncaught ReferenceError: ons is not defined”。
ons.navigator.pushPage('home.html');
我也试过 window.onload 或 $(document).ready 但我总是得到同样的错误。按钮点击工作正常。
感谢您的建议, Kornel
ons.ready liste for cordova deviceready 事件和加载温泉
ons.ready(function(){
myNavigator.pushPage('home.html');
});
有两个问题。一个是 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 );
}
}
请尝试以下代码:
menu.setMainPage('home.html', {closeMenu: true});