【发布时间】:2019-05-28 15:38:39
【问题描述】:
这是我的条件:我已经知道我需要十五个对象来存储事件数据,所以我只声明了十五个变量:
var e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, 15;
function Event(title, content, logo, logo_in_black) {
this.title = title;
this.content = content;
this.logo = logo;
this.logo_in_black = logo_in_black;
}
根据用户点击,我根据用户点击动态给对象分配数据:
e1 = new Event('Nike', 'BUY ONE GET ONE FOR FREE', logo_url, logo_url2);
然后在视图上显示结果:
$('#e-1').css('background-image', "url('" + e1.logo + "')");
我需要做同样的事情十五次才能将每个事件信息放到单独的块中,如下所示:<div id="e-1">!所以我只是尝试了以下方法,我认为它一定是解决方案:我将十五个对象放在一个数组中。
var e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15;
var events = [e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15];
分配数据并显示在视图上:
e1 = new Event('Nike', 'BUY ONE GET ONE FOR FREE', logo_url, logo_url2);
e2 = ...
e3 = ...
for (var i = 0; i < 15; i ++) {
$('#e-' + (i + 1)).css('background-image', "url('" + events[i].logo + "')");
}
但是我尝试访问属性的方式是错误的:events[i].logo
谁能告诉我为什么这行不通?
非常感谢!
【问题讨论】:
标签: javascript html arrays object