这个JavaScript代码的目的是什么?

时间:2013-08-26 13:28:18

标签: javascript html

我正在探查检查元素,并发现了这个:

NumberOfDivsToRandomDisplay = 10;

var CookieName = 'DivRamdomValueCookie';

function DisplayRandomDiv() {
    var r = Math.ceil(Math.random() * NumberOfDivsToRandomDisplay);
    if (NumberOfDivsToRandomDisplay > 1) {
        var ck = 0;
        var cookiebegin = document.cookie.indexOf(CookieName + "=");
        if (cookiebegin > -1) {
            cookiebegin += 1 + CookieName.length;
            cookieend = document.cookie.indexOf(";", cookiebegin);
            if (cookieend < cookiebegin) {
                cookieend = document.cookie.length;
            }
            ck = parseInt(document.cookie.substring(cookiebegin, cookieend));
        }
        while (r == ck) {
            r = Math.ceil(Math.random() * NumberOfDivsToRandomDisplay);
        }
        document.cookie = CookieName + "=" + r;
    }
    for (var i = 1; i <= NumberOfDivsToRandomDisplay; i++) {
        document.getElementById("randomdiv" + i).style.display = "none";
    }
    document.getElementById("randomdiv" + r).style.display = "block";
}
DisplayRandomDiv();

它的目的是什么?只是好奇,谢谢:)。

2 个答案:

答案 0 :(得分:1)

此代码假设您div有ID&#34; randomdiv1&#34;,&#34; randomdiv2&#34;等

然后,它会读取名为DivRamdomValueCookie的cookie。如果它存在,它包含一个整数值,它将是当前显示的div的ID(&#34; randomdiv&#34; + cookie的值)。

然后,它将隐藏所有div,然后显示一个div,不同于ID存储在cookie中的div。如果cookie不存在,它将显示随机div。

此脚本在NumberOfDivsToRandomDisplay变量中具有硬编码的div数。

答案 1 :(得分:0)

在一段时间内切换也存储特定div状态的div。

http://ipankaj.net/how-to-display-multiple-testimonials-randomly-on-your-website/