Вроде как разобрался, пошел другим путем, вот коротенький примерчик, подскажите может есть и другие решения или я в корне не правильно мыслю?
window.onload=function(){
for (var i = 0; i < 10; i++) {
var box = new Box();
box.append(document.body)
box.styled();
box.moveRandPos(500, 700);
box.moveRandBacColor();
}
}
function Box(element){
this.box = element || this.create();
}
Box.prototype.create=function(){
return document.createElement("DIV");
}
Box.prototype.append=function(to){
return to.appendChild(this.box)
}
Box.prototype.styled=function(){
this.box.style.cssText = "width:30px;height:30px;border:1px solid blue;position:absolute;"
return this.box;
}
Box.prototype.randColor=function(){
var sb = "0123456789abcdf";
var color = "#";
for(var i=0; i<6; i++){
color += sb.charAt(Math.random()*15);
}
return color;
}
Box.prototype.randBacColor=function(){
this.box.style.backgroundColor = this.randColor();
return this.box;
}
Box.prototype.moveRandBacColor=function(){
var _this = this;
function go()
{
_this.randBacColor();
setTimeout(go,1000)
}
go()
}
Box.prototype.randPos = function(max_top,max_left){
this.box.style.top = parseInt(Math.random()*(max_top-1)) + "px";
this.box.style.left = parseInt(Math.random()*(max_left-1)) + "px";
}
Box.prototype.moveRandPos=function(max_top,max_left){
var _this = this;
function go()
{
_this.randPos(max_top,max_left);
setTimeout(go,1000)
}
go()
}