Javascript 创建时动态设置元素的动画

Javascript 创建时动态设置元素的动画,javascript,jquery,animation,Javascript,Jquery,Animation,我想动态创建div,将它们附加到主体中,并设置jQuery动画 这是创建元素的地方: function drawSpot() { var myH1 = document.createElement("div"); myH1.style.position = "absolute"; myH1.style.top = GetRandom(0,100)+"%"; myH1.style.left = GetRandom(0,100)+"%"; myH1.style.width="40px";

我想动态创建div,将它们附加到主体中,并设置jQuery动画

这是创建元素的地方:

function drawSpot()
{
 var myH1 = document.createElement("div");
 myH1.style.position = "absolute";
 myH1.style.top = GetRandom(0,100)+"%";
 myH1.style.left = GetRandom(0,100)+"%";
 myH1.style.width="40px";
 myH1.style.height="40px";
 $("body").append(myH1);

}

从它们被附加到主体之后,我想开始动画。

使用jQuery创建元素,并在附加时为其设置动画:

function drawSpot() {
 var myH1 = $("<div>").css({ position: "absolute",
                             top:      GetRandom(0,100)+"%",
                             left:     GetRandom(0,100)+"%",
                             width:    40,
                             height:   40 });
 $("body").append(myH1.animate(...));
}
函数drawSpot(){
var myH1=$(“”).css({位置:“绝对”,
顶部:GetRandom(0100)+“%”,
左:GetRandom(0100)+“%”,
宽度:40,
身高:40});
$(“body”).append(myH1.animate(…);
}

如果您已经在使用jQuery,您应该一直这样做:

$('<div>', {
    css: {
        position:   'absolute',
        top:        GetRandom(0,100)+'%',
        left:       GetRandom(0,100)+'%',
        width:      '40px',
        height:     '40px'
    }
}).appendTo( document.body ).animate({
    left:  '100%'  // for instance
}, 2000);
$(“”{
css:{
位置:'绝对',
顶部:GetRandom(0100)+'%',
左:GetRandom(0100)+'%',
宽度:“40px”,
高度:'40px'
}
}).appendTo(document.body).设置动画({
左:“100%”//例如
}, 2000);
通过使用
.appendTo()
,您仍然拥有对原始对象的引用,并且能够在其上链接方法

参考号:

演示

应该可以

function drawSpot()
{
   var myH1 = '<div id="newDiv">Some Text</div>';
   $("body").append(myH1);

   $("#newDiv").css({'position' : 'absolute',
                     'top' : GetRandom(0,100)+"%",
                     'left' :GetRandom(0,100)+"%",
                     'width':'40px',
                     'height':'40px' 
                   });

   $("#newDiv").hide().fadeIn(500);
}
函数drawSpot()
{
var myH1=‘一些文本’;
$(“正文”)。追加(myH1);
$(“#newDiv”).css({'position':'absolute',
'top':GetRandom(0100)+“%”,
“左”:GetRandom(0100)+“%”,
“宽度”:“40px”,
“高度”:“40px”
});
$(“#newDiv”).hide().fadeIn(500);
}
您可以使用:
$(myH1).animate({left:'*randomvalue*',top:'*randomvalue*',1000)
追加后