我是 Jquery/javascript 的新手,几乎所有的经验都在 PHP 上。我现在发现事物排序的重要性:)
所以我正在尝试加载一些<div>
进入容器#text-container
使用.load
然后数一下。我对jquery的理解load
函数的特点是第二个参数是一个回调函数,只有在所有数据加载完毕后才会运行。但即使容器中放置了 4-5 个 div,它也始终报告为 0。我错过了什么吗?
1.txt
<div>1</div><div>2</div>
代码:
$("#text-container").load("1.txt",alert($("#text-container div").length));
这只是一个示例,但我需要使用该数字在其他函数中进行大量数学运算。因此,如果我调用这些而不是警报并尝试在那里运行 .length,它们都会得到 0 并且我的数学不起作用:(
想法?
最佳答案
您需要一个匿名函数来进行回调
$("#text-container").load("1.txt", function(data) {
alert( $("#text-container div").length )
});
This is just an example but I need to use that number to do a whole bunch of maths in other functions.
请注意,它是异步的,因此在它实际存在之前您无法使用它,为什么您的 .txt
文件包含 DIV 元素,对我来说似乎是错误的文件扩展名?
关于javascript - JS/Jquery .load 和 .length,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20884496/