鉴于您的容器 idcontainer
和您的可拖动 id 是dragid
,您可以执行以下操作:
ctop = $('#container').offset().top; // container top
cleft = $('#container').offset().left;// container left
cheight = $('#container').height(); // container height
cwidth = $('#container').width(); // container width
$(".t-shirt-design").each(function() {
dragheight = $(this).height(); //your draggable height
dragwidth = $(this).width(); // your draggable width
randomtop = ctop + Math.floor((Math.random()* (cheight - dragheight))+1);
randomleft = cleft + Math.floor((Math.random()* (cwidth - dragwidth))+1);
$(this).css({
'top' : randomtop,
'left': randomleft
});
});
更新:
更新了代码以容纳几个.t-shirt-design
元素
更新2:
你的html代码也有错误,一个html元素只能有一个id,你的容器html元素中有两个,如下:
<div id="tshirts-designs homepage">
只替换一个,正确的是:
<div id="homepage">
更新3:
查看您的页面,我调整了我的代码以更好地满足您的要求(您的可拖动元素具有不同的宽度和高度),因此请尝试我的更新代码,也可以更好地在window.load
事件上执行此代码,而不是.ready
,因为我们需要要加载的图像,因此 div 的高度和宽度是正确的,因此请替换以下行:
$(document).ready(function() {
对于这个:
$(window).load(function() {