Angularjs pageshow在apache cordova中不工作
您好,我正在尝试实现“pageshow”,因为如果要使用的页面按钮是登录,我需要阻止返回。Porém方法“pageshow”未被调用,因此我无法应用逻辑:Angularjs pageshow在apache cordova中不工作,angularjs,cordova,phonegap-plugins,cordova-plugins,visual-studio-cordova,Angularjs,Cordova,Phonegap Plugins,Cordova Plugins,Visual Studio Cordova,您好,我正在尝试实现“pageshow”,因为如果要使用的页面按钮是登录,我需要阻止返回。Porém方法“pageshow”未被调用,因此我无法应用逻辑: // and then run "window.location.reload()" in the JavaScript Console. (function () { "use strict"; var pageHistoryCount = 0; var goingBack =
// and then run "window.location.reload()" in the JavaScript Console.
(function () {
"use strict";
var pageHistoryCount = 0;
var goingBack = false;
document.addEventListener('deviceready', onDeviceReady.bind(this), false);
function onDeviceReady() {
document.addEventListener('pause', onPause.bind(this), false);
document.addEventListener('resume', onResume.bind(this), false);
document.addEventListener('backbutton', backButtonHandler, false);
$(document).bind("pageshow", function (e, data) {
console.log("AAAAAAAAAAAAAAA");
if (goingBack) {
goingBack = false;
} else {
pageHistoryCount++;
console.log("HERE");
}
});
// TODO: Cordova has been loaded. Perform any initialization that requires Cordova here.
};
function onPause() {
};
function onResume() {
};
function exitApp() {
navigator.app.exitApp();
};
function backButtonHandler(e) {
e.preventDefault();
console.log(pageHistoryCount);
if (pageHistoryCount > 0) pageHistoryCount--;
if (pageHistoryCount == 0) {
} else {
goingBack = true;
console.log("Going back to page #" + pageHistoryCount);
window.history.back();
}
//Here implement the back button handler
};
})();
你在用什么平台进行测试?还有,这是在一台设备上进行的,还是你只在Ripple中看到的?据我所知,pageshow是一个古老的jquery移动事件,因此你没有在问题中添加jquery移动标记,这可能是我在测试设备时遇到的问题Hello,在查看页面时,我还可以做哪些选择来识别?谢谢,如果我理解您的意图,您希望重定向到登录页面?通常,如果您有单独的页面,则使用页面加载事件或deviceready来完成。如果您使用的是像Angluar这样的框架,并且实际上不会转换页面,那么框架通常可以跟踪新页面何时加载到DOM中。