在 angular/ionic 应用中点击 anywhere/button press/input 焦点

Catch click anywhere/button press/input focus in angular/ionic app

我有一个带有自动注销功能的 ionic 应用程序。当用户执行任何操作时,我需要延长会话超时时间。我将剩余时间存储在本地存储中(使用 localStorageService)。

我可以在用户更改屏幕或单击按钮时延长时间,但我不确定如何在其余元素上执行此操作。

我只需要一种方法来捕捉任何动作(点击背景、关注元素、按下按钮)等。最简单的方法是什么?谢谢

您应该能够监听 touchend 事件,并保持超时;像这样:

.controller("AppCtrl", function ($scope, $timeout) {   
    var timeoutPromise,
        $body = document.querySelector("body");

    function logout () {
        // do logout work here
    }

    function resetTimer () {
        $timeout.cancel(timeoutPromise);
        timeoutPromise = $timeout(logout, 60000); // log out after 60 seconds
    }

    ionic.on("touchstart", resetTimer, $body);
    ionic.on("touchend", resetTimer, $body);
    resetTimer();
});

一些来源:

http://ionicframework.com/docs/api/utility/ionic.EventController/ https://docs.angularjs.org/api/ng/service/$timeout