2016-11-12 48 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"; 
}