jQuery:检查用户是否自己刷新页面

时间:2013-11-03 07:38:29

标签: jquery refresh

大家早上好;

我正在检查用户是否自己刷新页面:

$('.question').click(function(){
    $.ajax({
    type: "POST",
    url: "NextQuestion.php",
    dataType: "json",

    success: function(data) {

    window.location = '<?php echo $URL; ?>';

    }
    });
    });

上面的代码是通过单击链接类进行刷新是“问题”,如果该人没有单击该链接并自己刷新页面它应该标记一个警报,我期待的是:

如果某人点击了链接==&gt;页面将刷新,不会显示任何错误

如果有人通过按F5或其他键刷新,... ==&gt;页面将刷新并显示错误

提前致谢

1 个答案:

答案 0 :(得分:0)

这样做的唯一方法就是使用某种状态,在这种情况下,我使用了客户端。

$('.question').click(function(){
    $.ajax({
        type: "POST",
        url: "NextQuestion.php",
        dataType: "json",
        success: function(data) {
            $.cookie('clicked', 'yes');
            window.location = '<?php echo $URL; ?>';
        }
    });
});

然后测试:

if(!$.removeCookie('clicked')) {
    alert('You refreshed your page');
}

代码示例使用jQuery cookie插件。

如果设置了'clicked' Cookie,则会点击;否则他们会精神焕发。这并非完全万无一失;可以单击,然后在导航完成之前导航,然后返回。如果您对此感到担心,可以设置到期时间,但这是&lt; 1%用例。