2015-04-01 33 views
-2

我正在做一個JavaScript代碼,有一個按鈕,當我點擊它時,它顯示5個符號之一,但當我點擊按鈕時,它顯示隨機符號,但按鈕disapears。我是新來的JavaScript,所以我可以得到一些幫助?我需要一個按鈕不會消失

<script> 

function slots() 
{ 
    var slot1 = Math.floor(Math.random()*5); 
    if (slot1 == 0) { 
     document.write("\u2663"); 
    } 
    if (slot1 == 1) { 
     document.write("\u2665"); 
    } 
    if (slot1 == 2) { 
     document.write("\u2666"); 
    } 
    if (slot1 == 3) { 
     document.write("\u2660"); 
    } 
    if (slot1 == 4) { 
     document.write("7"); 
    } 
} 

</script> 
<button type="button" value="Spin" name="SPIN"onClick="slots(); return false;"></button> 
+1

看看[這個問題](http://stackoverflow.com/questions/13741584/what-does-document-write-do)。 – chazsolo 2015-04-01 00:45:25

回答

2

當你寫document.write()屏幕刷新,所以我想你可以做這樣的事情:

<script> 

function slots() 
{ 
    var slot1 = Math.floor(Math.random()*5); 
    if (slot1 == 0) { 
     document.getElementById('value').innerHTML = "\u2663"; 
    } 
    if (slot1 == 1) { 
     document.getElementById('value').innerHTML = "\u2665"; 
    } 
    if (slot1 == 2) { 
     document.getElementById('value').innerHTML = "\u2666"; 
    } 
    if (slot1 == 3) { 
     document.getElementById('value').innerHTML = "\u2660"; 
    } 
    if (slot1 == 4) { 
     document.getElementById('value').innerHTML = "7"; 
    } 

} 
</script> 

<button type="button" value="Spin" name="SPIN" onClick="slots();">Click</button> 
<span id="value"></span> 
+0

你介意我是否優化了一下代碼? – Shomz 2015-04-01 02:08:01

+0

一點都不,繼續。我只是添加了需要的東西。 – otrebla 2015-04-01 02:58:03

+0

沒關係,我實際上是在一個單獨的答案中寫的 - 在你的情況下,我會將if轉換爲else if以獲得微小的性能增益(更多因爲這對於初學者來說是一個很好的練習)。 – Shomz 2015-04-01 03:07:01

0

略優化otrebla的代碼版本,看到它在行動:

function slots() { 
 
    var slot1 = Math.floor(Math.random() * 5); 
 
    var value = document.getElementById('value'); 
 
    switch (slot1) { 
 
    case 0: 
 
     value.innerHTML = "\u2663"; 
 
     break; 
 
    case 1: 
 
     value.innerHTML = "\u2665"; 
 
     break; 
 
    case 2: 
 
     value.innerHTML = "\u2666"; 
 
     break; 
 
    case 3: 
 
     value.innerHTML = "\u2660"; 
 
     break; 
 
    case 4: 
 
     value.innerHTML = "7"; 
 
     break; 
 
    } 
 
}
<button type="button" value="Spin" name="SPIN" onClick="slots();">Click</button> 
 
<span id="value"></span>