eq没有得到正确,第二个元素

时间:2013-12-12 03:16:15

标签: javascript jquery html jquery-selectors selector

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<!DOCTYPE html>
<script>
mycars = {};

function dodat(){
var btn=document.createElement("div");
btn.style.width="25px";
btn.style.height="25px";
btn.style.backgroundColor="red";
btn.style.boxShadow="inset 0px 0px 0px 2px black";
btn.style.position="absolute";
btn.style.left="0px";
var numba = Math.round(Math.random()*10000000000);
btn.id=numba;
mycars[numba] = -100;

var move = function(){
mycars[numba] = mycars[numba]+1;
document.getElementById(numba).style.left=mycars[numba]+"px";
};

setInterval(move, 10);

document.getElementById("track").appendChild(btn);
}
</script>

<body>

<div style="background-color:#c3c3c3;width:500px;height:25px;overflow:hidden;position:relative;" id="track"></div>
</body>

<script>
setInterval("dodat();", "1000");
</script>
<script>
setInterval('alert($("div:eq(1)").position().left);', '1000');
</script>

我有一个问题,因为blob继续滚动jQuery div:eq(1)没有获得第二个元素,它似乎是获取最后一个元素或其他东西,它不是动态的。

请帮助,谢谢:)

1 个答案:

答案 0 :(得分:0)

在DOM准备好时编写代码。

尝试:

<script>
$(document).ready(function(){
    setInterval(function(){
        alert($("div:eq(0)").position().left);
    },1000);
});
</script>

DEMO here.