【发布时间】:2016-02-19 20:50:27
【问题描述】:
我有点难过,可能忽略了一些东西。 基本上我有一个 JS 对象数组:
var defaults = {
pointers : {
pointer1 : {
top : '0px',
left : '75px',
},
pointer2 : {
top : '310px',
left : '170px',
},
pointer3 : {
top : '50px',
left : '80px'
},
pointer4 : {
top : '0px',
left : '130px',
},
pointer5 : {
top : '310px',
left : '205px',
},
pointer6 : {
top : '50px',
left : '90px'
}
}
};
如果我手动调用它们以添加到具有 pointer-circle 类的 <li> 它工作正常:
$('.pointer-circle:eq(1)').css({
top : defaults.pointers.pointer1.top,
left : defaults.pointers.pointer1.left
});
但不是手动输出每个指针,而是希望它们通过 for 循环:
var i = 1;
for (i in defaults.pointers) {
$('.pointer-circle:eq(' + i + ')').css({
top : defaults.pointers.pointer[i].top,
left : defaults.pointers.pointer[i].left
});
}
这不起作用。在控制台日志中,我收到此错误:
未捕获的类型错误:无法读取未定义的属性“pointer1”
非常感谢任何帮助。
【问题讨论】:
-
谢谢。当我盯着同一个代码太久时,就会发生这种情况。不知道为什么我被否决了。只是寻求帮助...
标签: javascript jquery arrays javascript-objects