jQuery禁止多个页面实例

时间:2014-08-19 10:19:47

标签: javascript jquery security cookies

我尝试创建简单的保护措施,以保护我的网页不会多次打开。 我以为我可以使用cookies,所以如果我第一次进入页面,我会设置cookie url。 如果该cookie存在,我将显示错误,如果不是,我将设置它并正常显示页面。

这是我的代码:

$(function () {
    var loc = $.cookie('url');//get cookie

    if (typeof loc === 'undefined') {
        $.cookie('url', window.location.href);
        //first instance
        $('#single').show();//show page normally

        $(window).unload(function () {
            $.removeCookie('url');
        });

        $(window).on("beforeunload", function () {
            $.removeCookie('url');
        });

    } else {
        //already opened - show error!!!
        $('#second').show();
    }
});

这是我的jsfiddle

测试步骤:

  • 在新标签页中打开第一个页面实例(您将看到绿色框)
  • 在新标签页中打开第二个页面实例(您将看到红色框)
  • 关闭第一个实例并刷新第二个(您将看到绿色框)


这对我来说很有用,但是:

  • 我想知道我是否需要为我的Cookie设置过期日期?
  • 浏览器崩溃怎么样?
  • 这是一个很好的解决方案吗?
  • 如果没有,会有什么更好的方式?

0 个答案:

没有答案