我希望在页面周围随机放置整个加载的 div(最终将包含图像),包含在 100% 内。问题是我不希望 div 重叠,而且所有 div 的大小都取决于图像。
我目前拥有的方法
:(这里也是 jsfiddle http://jsfiddle.net/2z4rK/)
function randomFromTo(from, to){
return Math.floor(Math.random() * (to - from + 1) + from);
}
function moveRandom() {
var cPos = $('#block-container').offset();
var cHeight = $('#block-container').height();
var cWidth = $('#block-container').width();
var pad = parseInt($('#block-container').css('padding-top').replace('px', ''));
var bHeight = $('.block').height();
var bWidth = $('.block').width();
maxY = cPos.top + cHeight - bHeight - pad;
maxX = cPos.left + cWidth - bWidth - pad;
minY = cPos.top + pad;
minX = cPos.left + pad;
$('.block').each(function() {
newY = randomFromTo(minY, maxY);
newX = randomFromTo(minX, maxX);
$(this).animate({
top: newY,
left: newX
}, 500, function() {
});
});
}
moveRandom();
这没关系,但是 div 重叠,而且似乎它们都必须是相同的大小。div 将由客户端动态添加,因此我需要使其完全自给自足,这是我认为当前方法失败的地方。有没有办法随机定位div?
我正在努力实现的一个很好的例子:http: //www.jormamueller.com