Я хочу, чтобы он отображал изображение кости, но не выводил? Что не так? Я выбираю случайное число от 1 до 6, и оно покажет лицо кости. Ну, это должно быть, но это не работает. Я также хочу отображать изображения в другом месте, не заменяя кнопку. Как ты это делаешь?

<html>
<head><title>DiceBoy</title>
</head>
<body>
<script>
function getRandom(){
var RandomNumber1 = Math.floor(Math.random() * 6) + 1;
var RandomNumber2 = Math.floor(Math.random() * 6) + 1;
  if(RandomNumber1 == 1) document.write('<img src="dice1.png">');
  else if(RandomNumber1 == 2)  document.write('<img src="dice2.png">');
  else if(RandomNumber1 == 3)  document.write('<img src="dice3.png">');
    else if(RandomNumber1 == 4)  document.write('<img src="dice4.png">');
      else if(RandomNumber1 == 5)  document.write('<img src="dice5.png">');

                  else var  document.write('<img src="dice6.png">');


}

</script>
<input type="button" value="Throw Dices" onClick="getRandom();">
-1
Asmastas Maz 31 Янв 2013 в 14:05

4 ответа

Лучший ответ

Этот код выглядит ужасно, убедитесь, что вы всегда СУХОЙ код:

function getRandom(){
     var RandomNumber1 = Math.floor(Math.random() * 6) + 1;
     var RandomNumber2 = Math.floor(Math.random() * 6) + 1;

     document.getElementById('result').innerHTML = '<img src="dice' + RandomNumber1 + '.png">';
     document.getElementById('result').innerHTML += '<img src="dice' + RandomNumber2 + '.png">';
}

http://jsfiddle.net/tzrGh/4/

6
XCS 31 Янв 2013 в 10:18

У вас есть дополнительный вар в конце

else document.write('<img src="dice6.png">'); //removed the var 
1
basarat 31 Янв 2013 в 10:10

Вы могли бы сделать так:

function getRandom(){
  var RandomNumber1 = Math.floor(Math.random() * 6) + 1;
  document.getElementById("showImage").innerHTML='<img src="dice' + RandomNumber1 + '.png">';
}

и в разметке

Перед вашей кнопкой:

<div id="showImage"></div>
0
nsthethunderbolt 31 Янв 2013 в 10:21

У вас есть дополнительный var в последний else

И за ваше желание показать еще кубики, где я продолжу отличную реализацию Кристи.

Добавьте пустой div под кнопкой:

<input type="button" value="Throw Dices" onClick="getRandom();">
<div id="diceImage1"> </div>
<div id="diceImage2"> </div>

И затем используйте эту функцию:

function getRandom(){
  var RandomNumber1 = Math.floor(Math.random() * 6) + 1;
  var RandomNumber2 = Math.floor(Math.random() * 6) + 1;

  document.getElementById("diceImage1").innerHTML = '<img src="dice' + RandomNumber1 + '.png">';
  document.getElementById("diceImage2").innerHTML = '<img src="dice' + RandomNumber2 + '.png">';
}
1
Dor Cohen 31 Янв 2013 в 10:36