如何从阵列中拉出图像并将其推入div中?

时间:2013-11-07 18:05:39

标签: javascript stack

我正在尝试自学javascript。

我有一个图像数组,我试图让它们从数组中跳出来并同时推入div中,以便它们显示在屏幕上而不再在数组内部。

我这样做是为了让我可以尝试制作黑色插卡游戏。当然,我需要知道如何做到这一点。

非常感谢任何协助。

编辑:我尝试了以下内容:

var cards = [], i=0;
while(i<54){
var card = {'1.png': 1};
card.number = ++i;
card.value = "1.png";
cards.push(dealerField) } 

“dealerFIeld”是我的div。我知道有错误,但它不起作用。但我认为我所要撒谎的基本思路是在那里。

2 个答案:

答案 0 :(得分:0)

使用jQuery library扩展您的js功能。然后使用类似的东西:

$("#a_div_marked_by_an_id").html('string you want to replace the div contents with');

你当然也可以使用像'string'这样的变量<{1}}代替varName

以上示例将插入

<div id="a_div_marked_by_an_id></div>

创建

<div id="a_div_marked_by_an_id>string you want to replace the div contents with</div>

答案 1 :(得分:0)

首先,不要在循环中重新定义变量,这只是浪费。 然后,您需要创建一个图像标记并将其附加到循环内的“dealerField”。

var cards = [],
    i=0,
    card = {},
    img;

while( i < 54 ){
    card.number = ++i;
    card.value = i + ".png";
    img = document.createElement( "img" );
    img.src = card.value;
    img.alt = card.number;

    document.getElementByID( "dealerField" ).appendChild( img );
}

现在,其中一些有点不必要,比如写入该对象然后立即将其复制到图像中。所以你可以这样做:

var i=0,
    img;

while( i < 54 ){
    img = document.createElement( "img" );
    img.alt = ++i;
    img.src = i + ".png";

    document.getElementByID( "dealerField" ).appendChild( img );
}

更多

重新阅读你的问题之后,好像你的数组cards可能会有一些内容 - 比如卡片对象。显然,我不能确定,因为你没有在其中放置任何示例数据,但这是同样的事情,但使用卡阵列作为数据源:

// cards is an array of card objects with some arbitrary structure
var i = 0,
    len = cards.length,
    card,img;

for( i; i < len; i++){
    img = document.createElement( "img" );
    card = cards[ i ];

    img.src = card.value;
    img.alt = card.number;

    document.getElementByID( "dealerField" ).appendChild( img );
}