刷新页面添加新的随机参数

时间:2015-03-11 12:03:28

标签: javascript jquery

我想加载一个随机参数的网址。例如(rnd是随机值):

  1. 加载www.website.com?rnd=2398
  2. 按F5
  3. 自动加载www.website.com?rnd=4583
  4. 转到步骤3是您按F5,但使用新的rnd
  5. 我尝试使用onbeforeunload,但我不想让它问我是否愿意留在这里或离开页面。我也使用这个功能:

    jQuery().ready(function () {
        var actualUrl = window.location.href;
        var aleat = Math.round(Math.random() * 100000);
        if (actualUrl.indexOf('rnd') != -1) {
            $("a[href]").attr('href', function (index, href) {
                if (href.indexOf("javascript") == -1 && href.indexOf("mailto") == -1) {
                    return href + (href.indexOf('?') != -1 ? "&rnd=" + aleat : "?rnd=" + aleat);
                }
            });
        }
    });
    

    使用此函数,如果我使用rnd param,那么我在所有href中添加一个新的rnd param。所以当我点击一个href时,用一个新的随机参数加载url。我的问题是......如何使用F5 / refresh实现网址?

1 个答案:

答案 0 :(得分:0)

您可以使用此插件:

https://github.com/carhartl/jquery-cookie

制作这样的东西:

$(document).ready(function(){

    var url = window.location.href;
    var rnd = url.split('rnd=')[1];
    var cookie = $.cookie("rnd");
    var newRnd = Math.round(Math.random() * 100000);

    $.cookie("rnd", newRnd);

    if(rnd == cookie || !cookie) {
        window.location.href = 'http://www.website.com/?rnd=' + newRnd;
    }
});

这只是一个快速草案,我没有测试它但应该接近,希望这对你有帮助。