在jquery中为特定页面设置变量

时间:2013-10-24 11:36:55

标签: jquery scope

我想为特定页面设置变量。每当加载该页面时,该值应该增加。 我想不使用会话或应用程序范围还有其他更好的选择。

如果我在加载页面时分配一个变量,它会自动初始化如何避免这种情况。


道歉没有提供完整的详细信息。

如果点击任何其他网址,则应初始化该值。

请告诉我。

3 个答案:

答案 0 :(得分:1)

尝试使用jQuery Cookie

$(document).ready(function(){
var count=parseInt($.cookie('the_page_count_cookie'),10);

$.cookie('the_page_count_cookie', count+1); 

});

答案 1 :(得分:1)

使用cookies。有一个优秀的jQuery cookie包装器插件。 https://github.com/carhartl/jquery-cookie

这就是你的方式。

<head></head>标记之间添加:

<script src="/path/to/jquery.cookie.js"></script>

现在用法如下(对于您的用例 - 将其添加到每个页面):

<script type="text/javascript">

$(document).ready(function()
{
    // Get Cookie Value
    var currentCount = $.cookie('myPageCounter');

    // Create Cookie, if the cookie doesn't exist
    if (!currentCount) {
        $.cookie('myPageCounter', 1);
    }

    // Otherwise, increment the cookie counter
    else {
        $.cookie('myPageCounter', (currentCount + 1));
    }
});

</script>

答案 2 :(得分:0)

您可以使用localStorage,例如

localStorage['yourVarname'] = yourFunctionResult;

只要您信任您的用户使用的是现代浏览器(Firefox 3.5 +,Safari 4 +,IE8 +和Chrome支持localStorage)。否则你有几个选项,其中两个你不想使用,所以你的左边有cookie(另一个人提供了详细信息,所以我不详细说明)或其他选项,如下所述:{{3} }:

  

将数据传递到URL并读取当前URL(包括该数据)   你加载了页面加载时。例如:将浏览器重定向到   {* 3}}如果用户刷新   通过浏览器或重定向到   如果用户点击了Is it possible to create a variable, that doesn't change on refresh the page, in javascript?   按钮。在页面的onload上只需阅读当前的URL并查看   旗帜是什么。