2016-11-12 59 views
0

我想切换使用if语句查看数组的图像。代码似乎不起作用。我已经能够把它与一个按钮,工作虽然在另一个文件如何修复切换img与if语句

var deck = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52]; 
 

 
function myFunction() { 
 
    deck.shift(); 
 
    deck.shift(); 
 
    deck.shift(); 
 
    deck.shift(); 
 

 
    if (deck[0] == 1) { 
 
     if (document.getElementById("01c")) { 
 
     document.getElementById("img").src = "01c.png"; 
 
     } 
 
    } else if (deck[0] == 2) { 
 
     if (document.getElementById("01d")) { 
 
     document.getElementById("img").src = "01d.png"; 
 
     } 
 
    }
<button onclick="myFunction()">try it</button> 
 
<img src="" id="img" />

这是一个工作的例子,但用了,如果statment

function pic1() { 
 
    document.getElementById("img").src = "http://cliparts.co/cliparts/8TG/beG/8TGbeGAAc.png"; 
 
} 
 

 
function pic2() { 
 
    document.getElementById("img").src = "https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Playing_card_diamond_9.svg/2000px-Playing_card_diamond_9.svg.png"; 
 
}
<img src="" id="img" height="50" /> 
 
<input type="button" value="Show Picture 1" onclick="pic1()" /> 
 
<input type="button" value="Show Picture 2" onclick="pic2()" />

+0

这是最有可能的问题,你真正想要的。请给这个问题添加一些信息,看看这里:[mcve] –

+0

4 array.shift().'1,2,3,4'的值被移除。如何与'deck [0] ==''''deck.shift()'' – prasanth

+0

预期的结果是什么? 'deck'的用途是什么? – guest271314

回答

0

为什么不将目标元素存储在数组中?除了使用

var deck = [1, 2, 3, 4, 5, 6, 7, /* ... */]; 

的你可以使用的卡的目标阵列的内部,像

var deck = ['01a', '01b', '01c', '01d', '02a', '02b', '02c', /* ... */]; 

使用

if (document.getElementById(deck[0])) { 
    document.getElementById("img").src = deck[0] + ".png"; 
}