2013-03-29 23 views
0

我已經爲我的測試網站製作了Javascript隨機口號生成器,它不知何故被竊聽,我不知道爲什麼。在我的代碼中,Javascript的開關神祕處

<body onload="rndqu()"> 
    <div id="head"> <a href="index.html">Mira's place<a><br> 
      <h2>&#8220;<span id="quote"></span>&#8221;</h2> 
    </div> 
</body> 

這裏是JavaScript

var qu; 
var slogan; 
function rndqu(n){ 
    var random = function(min, max) { 
    return Math.floor(Math.random() * (max - min + 1)) + min; 
    }; 
    qu = random(1, 7); 
    switch(qu){ 
     case 1: 
      slogan = "This text is random generated. Woohooo... :P"; 
      break; 
     case 2: 
      slogan = "Mira is creating huge game named Rock Paper."; 
      break; 
     case 3: 
      slogan = "I will add discussion on my site!"; 
      break; 
     case 4: 
      slogan = "Everyone loves Koding."; 
      return; 
     case 5: 
      slogan = "Mira is potato. :("; 
      return; 
     case 6: 
      slogan = "I'm learning Javascript, this slogan is made in Javascript!"; 
      return; 
     case 7: 
      slogan = "There is actually over 9000 slogans!"; 
      return; 
     default: 
      slogan = "Is it possible to get default?"; 
    } 
    document.getElementById("quote").innerHTML = slogan; 
} 

有時工作,有時不工作。我試過谷歌瀏覽器和它的控制檯,並使用這個命令rndqu(); console.log(qu);進行調試。但我失敗了。我沒有看到代碼中的任何錯誤。

當:

qu = 1口號作品的權利。

qu = 2口號正確。

qu = 3口號正確。

qu = 4口號不變。

qu = 5口號不變。

qu = 6口號不變。

qu = 7口號不變。

對我來說,這是完全的神祕,爲什麼它不工作。

編輯:我BLIND DUMB。我是BLIND DUMB!

+2

這就是你爲什麼要使用我的答案在http://stackoverflow.com/questions/15709296/random-slogan-generator-with-using-javascripts-switch/15709361首先! ;) – metadept

+0

這裏是一個ideea:你爲什麼不把標語存儲在數組中,然後根據隨機索引檢索標語? 'var slogans = ['slogan 1','slogan 2','slogan 3']; var slogan = slogans [Math.floor(Math.random()* slogans.length)];' –

+0

我會這樣做的,但我正在學習開關,所以我想用它。 – Kyrbi

回答

7

因爲在不起作用的情況下,您正在使用return;而不是break;,因此您退出該功能並且未到達存儲結果的部分。

+0

謝謝,我瞎了! :d – Kyrbi

2

你,而不是回到休息的情況下,自4號 容易修復:-)

2

你已經的return;代替break;病例4,5,6,7