jquery在javascript for循环中未按预期工作

jquery在javascript for循环中未按预期工作,javascript,jquery,Javascript,Jquery,我遇到了在javascript for循环中使用jQuery的问题。经过24个多小时的调查,我决定发布问题的核心。我将代码缩减为一个简单的示例: var a, i, j; var n = $("div.kategorija_tekst").length; document.write("n = " + n + "<br>"); for (i = 0; i < n; i++){ a = $("div.kategorija_tekst").length; docum

我遇到了在javascript for循环中使用jQuery的问题。经过24个多小时的调查,我决定发布问题的核心。我将代码缩减为一个简单的示例:

var a, i, j;
var n = $("div.kategorija_tekst").length;
document.write("n = " + n + "<br>");
for (i = 0; i < n; i++){
    a = $("div.kategorija_tekst").length;
    document.write("polje["+i+"]  = " + a +"<br>");
    for (j = 0; j < a; j++){
        document.write($("div.def_tekst").eq(j).height() + "px, ");
    }
}

任何帮助都将不胜感激

document.write覆盖文档内容:

var a, i, j;
var n = $("div.kategorija_tekst").length; 
document.write("n = " + n + "<br>"); //document no longer has any elements
for (i = 0; i < n; i++){
    a = $("div.kategorija_tekst").length; // returns null, no such thing in document
    document.write("polje["+i+"]  = " + a +"<br>");
    for (j = 0; j < a; j++){
        document.write($("div.def_tekst").eq(j).height() + "px, ");
    }
}
var a,i,j;
var n=$(“卡泰戈里亚区”)。长度;
文档。写入(“n=“+n+”
”//文档不再有任何元素 对于(i=0;i”; 对于(j=0;j

您正在覆盖文档内容,因此下一个选择器总是返回null。

您可以创建表示问题的JSFIDE吗?如果您登录到控制台而不是使用
document.write()
,会发生什么情况?哦,我明白了
document.write()
覆盖文档内容,有关此问题的详细信息,请参阅。因此,我重新使用了
console.log
,对于
“polje[“+I+”]=“+a+”
,我得到了预期的结果。但最后一次输出仍然为零
$(“div.def_tekst”).eq(j).height()+“px”)
。我打算创建JSFIDLE来表示这个案例。Eureka,我已经得到了预期的代码。过去几天出现问题的唯一原因是使用了该死的
document.write()
而不是
console.log()
。谢谢大家的帮助!
var a, i, j;
var n = $("div.kategorija_tekst").length; 
document.write("n = " + n + "<br>"); //document no longer has any elements
for (i = 0; i < n; i++){
    a = $("div.kategorija_tekst").length; // returns null, no such thing in document
    document.write("polje["+i+"]  = " + a +"<br>");
    for (j = 0; j < a; j++){
        document.write($("div.def_tekst").eq(j).height() + "px, ");
    }
}