为什么会这样? 当我直接引用该元素时,我得到了预期的结果。当我将元素分配给变量时,结果始终为 1。
当我这样写代码时,结果总是 1:
$dynamicNode = $(".dynamic");
$deleteNode = $(".trash");
$deleteNode.click(function(){
$count = $dynamicNode.length;
console.log($count);
});
当我这样写代码时,结果是具有类 .dynamic 的元素的实际数量。
$deleteNode = $(".trash");
$deleteNode.click(function(){
$count = $(".dynamic").length;
console.log($count);
});
最佳答案
不同之处在于定义变量的位置。在第一个示例中,您在页面加载时获取元素,因此 length
在以后的点击事件中将始终相同。
在第二个示例中,您在单击按钮时获得了 length
,因此它始终与 DOM 的状态保持同步。
关于javascript - 当元素分配给变量时,jQuery 长度返回 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43635617/