Javascript 添加“For”时循环退出;偏移量();

Javascript 添加“For”时循环退出;偏移量();,javascript,jquery,html,for-loop,Javascript,Jquery,Html,For Loop,我有一个for循环,它将一个div附加到一个元素。在循环的中,我想将offset().left传递给一个变量。每当我这样做时,for循环的就会退出。如果我删除.left,它可以正常工作 如何添加.offset().top在循环中而不退出 var-vals=5; 对于(var i=0;i对于记录,循环提前退出的原因是因为遇到运行时错误,即: “未捕获的TypeError:无法读取未定义的属性'left'” 这可能是因为页上不存在id为nothing的元素。$(asdf).offset()如果选

我有一个
for循环
,它将
一个
div
附加到一个元素。在循环的
中,我想将
offset().left
传递给一个变量。每当我这样做时,for循环的
就会退出。如果我删除
.left
,它可以正常工作

如何添加
.offset().top在循环中而不退出

var-vals=5;

对于(var i=0;i对于记录,循环提前退出的原因是因为遇到运行时错误,即:

“未捕获的TypeError:无法读取未定义的属性'left'”


这可能是因为页上不存在id为nothing的元素。
$(asdf).offset()如果选择器没有捕获DOM元素,
将返回
null

是否检查了浏览器的错误控制台…?可能是因为
#什么都不存在?!如果打开控制台,您可以清楚地看到它说“无法读取未定义的属性'left'”。首先检查是否
$('nothing')).offset()
是在尝试获取
.left
属性之前定义的,请始终检查您的控制台是否有错误。就是这样!我忘记检查控制台了。除了
offset()之外,请更正
返回。如果jQuery找不到节点,它实际上会返回
未定义的
。要针对未定义的值进行测试,可以使用
if(typeof myVariable=='undefined')
if(myVariable==undefined)