你的 snowTop 不能大于 450,因为它与父容器顶部的间距必须大于 0,因为它与父容器左侧的间距必须大于 0。
问题仅在于您的CSS在这一行
.css('left', left).css('top', snowTop)
您必须确保您的左侧间距不应小于 0,并且您的顶部也不得超过最大限制(根据我的屏幕分辨率和页面大小,这里我采用了 450)。
这对我有用,试试吧。
jQuery(function () {
var windowHeight = jQuery(window).height();
var drop = jQuery('.drop2').detach();
var wh = jQuery(window).height();
var ww = jQuery(window).width();
var fh = jQuery('.drop2').outerHeight();
var fw = jQuery('.drop2').outerWidth();
function create() {
var left = Math.random() * jQuery(window).width() - 100;
if (left < 0)
left = 1;
var snowTop = Math.floor(Math.random() * (windowHeight));
if (snowTop > 450)
snowTop = 450;
var number1 = windowHeight - 500 + Math.floor(Math.random() * windowHeight);
var number2 = 1 + Math.floor(Math.random() * 28);
var number3 = 9 + Math.floor(Math.random() * 4);
var number4 = 13 + Math.floor(Math.random() * 4);
var number5 = 17 + Math.floor(Math.random() * 4);
var imageSize = Math.floor(Math.random() * 20);
//alert(imageSize);
if (imageSize > 15) {
var customsize = Math.random(1 * 1000) + 9000;
} else {
var customsize = Math.random(1 * 1000) + 15000;
}
// alert(number1);
var clone = drop
.clone()
.appendTo('body')
.css('left', left)
.css('top', snowTop)
.html('<img src="http://i.stack.imgur.com/S9o1r.png"/>')
.animate({
}, 20000, function () {
jQuery(this).fadeIn(2000, function () {
jQuery(this).fadeOut(2000);
});
jQuery(this).click(function () {
alert("Happy Holidays");
});
jQuery(this).hover(
function () {
jQuery(this).append(jQuery("<div id='new' style='width:100px;height:100px;color:#fff;'>Happy Holidays</div>"));
}, function () {
jQuery(this).find("div:last").remove();
}
);
});
}
setInterval(create, 1000);
});