下雪直到页面结束

时间:2011-12-08 16:48:46

标签: javascript

我的网站有一个雪的脚本,我是从this site获取的。如您所见,雪不会出现在页面底部。我怎样才能让它走到尽头?

源代码:

var SNOW_Time;
var SNOW_dx, SNOW_xp, SNOW_yp;
var SNOW_am, SNOW_stx, SNOW_sty;
var i, SNOW_Browser_Width = $(document).width(), SNOW_Browser_Height = $(document).height();

SNOW_dx = new Array();
SNOW_xp = new Array();
SNOW_yp = new Array();
SNOW_am = new Array();
SNOW_stx = new Array();
SNOW_sty = new Array();

for (i = 0; i < SNOW_no; ++i) {
    SNOW_dx[i] = 0;
    SNOW_xp[i] = Math.random() * (SNOW_Browser_Width - 50);
    SNOW_yp[i] = Math.random() * SNOW_Browser_Height;
    SNOW_am[i] = Math.random() * 20;
    SNOW_stx[i] = 0.02 + Math.random() / 10;
    SNOW_sty[i] = 0.7 + Math.random();
    if (i == 0) document.write("<\div id=\"SNOW_flake" + i + "\" style=\"position: absolute; z-index: " + i + "; visibility: visible; top: 15px; left: 15px; width: " + SNOW_Width + "; height: " + SNOW_Height + "; background: url('" + SNOW_Picture + "') no-repeat;\"><\/div>");
    else document.write("<\div id=\"SNOW_flake" + i + "\" style=\"position: absolute; z-index: " + i + "; visibility: visible; top: 15px; left: 15px; width: " + SNOW_Width + "; height: " + SNOW_Height + "; background: url('" + SNOW_Picture + "') no-repeat;\"><\/div>");
}

function SNOW_Weather() {

    for (i = 0; i < SNOW_no; ++i) {
        SNOW_yp[i] += SNOW_sty[i];

        if (SNOW_yp[i] > SNOW_Browser_Height) {
            SNOW_xp[i] = Math.random() * (SNOW_Browser_Width - SNOW_am[i] - 30);
            SNOW_yp[i] = 0;
            SNOW_stx[i] = 0.02 + Math.random() / 10;
            SNOW_sty[i] = 0.7 + Math.random();
        }

        SNOW_dx[i] += SNOW_stx[i];

        document.getElementById("SNOW_flake" + i).style.top = SNOW_yp[i] + "px";
        document.getElementById("SNOW_flake" + i).style.left = SNOW_xp[i] + SNOW_am[i] * Math.sin(SNOW_dx[i]) + "px";
    }

    SNOW_Time = setTimeout("SNOW_Weather()", 10);

}

SNOW_Weather(); 

1 个答案:

答案 0 :(得分:1)

看起来它由变量SNOW_Browser_Height决定。 $(document).height()未返回正确的高度。你可以改用它:

document.body.getClientRects()[0].height