我正在尝试使用 javascript 连续显示一些 div。为此,我有以下 JScode:
var levels = [
[
[1,2,0,1,2,1]
]
];
如果为 1 则显示红色 div 块,如果为 2 则显示蓝色 div 块,如果为 0 则不显示任何块。这一切都好。div 为 100 x100px,它生成的 HTML 如下所示:
<div id="plane">
<div class="tile tile1" style="left:0px; top:0px"></div>
<div class="tile tile2" style="left:100px; top:0px"></div>
<div class="tile tile1" style="left:300px; top:0px"></div>
<div class="tile tile2" style="left:400px; top:0px"></div>
<div class="tile tile1" style="left:500px; top:0px"></div>
</div>
由这部分 JS 代码完成:
this.getHTML = function () {
return '<div class="tile tile'+this.type+'" style="left:'+this.x*100+'px; top:'+this.y*100+'px"></div>';
};
如您所见,未显示 0 块。我遇到的问题是这个 0 块也是 100x100px,我希望它是 50x50px。所以只有 0 块 50x50px,所有其他的应该保持 100x100px 所以它会产生:
<div id="plane">
<div class="tile tile1" style="left:0px; top:0px"></div>
<div class="tile tile2" style="left:100px; top:0px"></div>
<div class="tile tile1" style="left:250px; top:0px"></div>
<div class="tile tile2" style="left:350px; top:0px"></div>
<div class="tile tile1" style="left:450px; top:0px"></div>
</div>
但是如何正确地做到这一点?我有点卡在这里。我尝试过调整 CSS 值,但这不起作用。
请看我的小提琴(点击 1 查看块):http: //jsfiddle.net/mauricederegt/8aNL9/
亲切的问候