var random1 = Math.floor((Math.random()*elems.length));
var random2 = Math.floor((Math.random()*elems.length));
while (random1 == random2) {
var random2 = Math.floor((Math.random()*elems.length));
}
$j('#project-scroller').append( elems );
$j('#project-scroller').append( elems[random1] );
$j('#project-scroller').append( elems[random2] );
所以这就是发生了什么:elems被追加但是elms [random1]和elems [random2]没有。
然后我尝试了这个:
$j('#project-scroller').append( elems );
$j('#project-scroller').append( elems );
和elems只附加一次,那个时候也是!所以我试着这样做了:
$j('#project-scroller').append( elems[random1] );
$j('#project-scroller').append( elems[random2] );
随附两个随机元素。然后我尝试将random1追加两次,并且只附加一次......
我错过了什么?为什么jQuery不会多次附加相同的元素?用appendTo尝试同样的事情(只是为了踢),它做同样的事情。
谢谢你的回答!这就是我最终的结果:
var random1 = Math.floor((Math.random()*elems.length));
var random2 = Math.floor((Math.random()*elems.length));
while (random1 == random2) {
var random2 = Math.floor((Math.random()*elems.length));
}
newElem1 = $j(elems[random1]).clone();
newElem2 = $j(elems[random2]).clone();
$j('#project-scroller').append( elems ).append( newElem1 ).append( newElem2 );
答案 0 :(得分:8)
它没有附加elems
的副本,它附加了真实的东西。使用clone()
创建要附加的第二个副本。