Jquery空闲计时器激活未触发

时间:2014-01-17 18:50:43

标签: javascript jquery jquery-mobile jquery-plugins

我正在使用JQuery idle-time插件在x分钟的空闲时间后自动注销用户。 但是这个空闲/活动时间也应该在服务器中更新。因此,尝试在active.idleTimer函数内对服务器执行Ajax命中。

<script type="text/javascript">
    (function ($) {
        var timeout = 1800000;
        $(document).bind("idle.idleTimer", function () {
            window.location.href = "MyLOGOUT_URL";
        });
        $(document).bind("active.idleTimer", function () {
            $.ajax({ type: "POST", url : "My_URL" });
        });
        $.idleTimer(timeout);
    })(jQuery);

</script>

但是当用户处于活动状态时,不会调用此active.idleTimer。我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

似乎对我有用:

  

<强> DEMO

尝试将您的代码放入jQM pageinit事件中并使用.on()而不是bind:

$(document).on("pageinit", "#page1", function(){    
    $( document ).idleTimer( 5000 );
    $( document ).on( "idle.idleTimer", function(){
        $("#textinput-1").val('Idle at: ' + new Date());
    });

    $( document ).on( "active.idleTimer", function(){
        $("#textinput-1").val('Active again at: '  + new Date());
    });
});