Jquery随机位置到多个div

时间:2013-01-15 13:58:41

标签: javascript jquery html position each

这是我的代码http://jsfiddle.net/BREvn/2/ (可行),但我希望每个div都使用唯一的位置坐标。现在脚本获得第一个,其他人移动到他的位置。怎么可能解决这个问题?我尝试了一个.each函数,但没有任何结果。我认为这很容易,但我在jquery / javascript中太好了。

$('#latestblock').animate({
  top: newY,
  left: newX
}, 500, function() { });

我认为这里必须循环但不知道该怎么做。

3 个答案:

答案 0 :(得分:2)

这样的东西?

http://jsfiddle.net/BREvn/5/

我将id重命名为一个类并创建了一个无限循环。 同时将对象发送到moveRandom函数'moveRandom(obj)',并在de动画结束后,自行调用moveRandom函数。

$('.latestblock').each(function() {
    moveRandom($(this));
});

答案 1 :(得分:1)

您不能为多个元素提供相同的ID。

您可以使用课程

<div id='container'>
  <div class='latestblock'></div>
  <div class='latestblock'></div>
  <div class='latestblock'></div>
</div>

然后使用each为所有元素设置动画:

$('.latestblock').each(function(){ // <= iterates on all blocks
   moveRandom($(this)); // <= pass the block to the moveRandom function
});

Complete demo

答案 2 :(得分:0)

以下是更新后的工作版本:http://jsfiddle.net/BREvn/4/

ID必须是唯一的,您不能拥有3个具有相同ID ='latestblock'

的元素

我还调用了该函数三次,并确保该函数使用了传入的参数。

moveRandom('#latestblock1');
moveRandom('#latestblock2');
moveRandom('#latestblock3');