使用math.random随机化网页

时间:2014-10-18 09:59:23

标签: javascript html

我正在创建一个网站,其中有35个网页播放歌曲。然后我在页面上有4个可能的答案,当你点击它们中的任何一个时,它会随机带你到我的另一个页面。但是我希望它只去每个页面,当它经历了所有这些时它应链接到新页面。任何人都可以帮助我吗?

使用Javascript:

    function myFunction() {

var no=Math.floor((Math.random() * 35) + 1)
 window.location.href = "Sang"+no+".html";}

所以我改变了javascript。现在它更简单了。

我的一个网页:

   <!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Gæt en sang</title>
<link rel="stylesheet" type="text/css" href="main.css">
<script src="Test.js"></script>
</head>

<body>
    <audio class="hidden" controls autoplay>
  <source src="horse.ogg" type="audio/ogg">
  <source src="pokemon.mp3" type="audio/mpeg">
    </audio>
        <div id="header">
            <h2> Gæt sangen og hejs flagstangen!</h2>
        </div>
        <div id="left">
        <ul> Hvilken sang er dette?

            </br>
            <button type="button" onclick="myFunction()">
            <li> World we must defend </li>
            </button>
            </br>
            <button type="button" onclick="myFunction()">
            <li> Pokemon theme</li>
            </button>
            </br>
            <button type="button" onclick="myFunction()">
            <li> Gotta Catch 'em All<li>
            </button>
            </br>
            <button type="button" onclick="myFunction()">
            <li> You teach me i teach you <li>
    </button>
        </ul>
        </div>
   </div>
    <p id="Test"></p>
</body>

</html>

3 个答案:

答案 0 :(得分:1)

请不要杀死JavaScript。 您的代码存在很多问题。

您需要使用(Math.random() * 36)作为Sebastien C.建议发表评论:

 var no=Math.floor((Math.random() * 36) + 1)
 window.location.href = "Sang"+no+".html";

最好先制作一个干净的逻辑。然后尝试应用它。

答案 1 :(得分:1)

不知何故,您需要保留已访问页面的列表。有很多方法。您可以使用cookie或本地存储甚至数据库。最简单的方法是在每次访问后将查询字符串附加到URL。一个可能的例子:

window.location.href = 'sang3.html?visited=sang1,sang2,sang3';

答案 2 :(得分:0)

首先,你需要在列表中定义它们,如

var pages = ['sang1.html', 'sang2.htm', ...]

比调用随机:

var page = Math.floor((Math.random() * pages.length) + 1)
window.location.href = pages[page]
pages.splice(page) // remove page from array