0

乱数を生成するための Web ページを持っています。数値が 5 の場合、勝利メッセージが表示されます。負けメッセージが表示されない場合、警告は表示されません。

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">

function WinLose()
{
var x=document.getElementById("demo");
x=x.innerHTML=Math.floor((Math.random()*5)+1);
return x;
if (x=4)
{
    alert("winner!");
}
else
{
    alert("loser");
}
}
</script>

</head>
<body>


<p id="demo">Click the button to display a random number between 1 and5.</p>


<button onclick="WinLose()">Try it</button>

</body>
</html>

編集: このビットを機能させることができたので、その数に応じて勝ちまたは負けのいずれかが表示されますが、if ステートメントでアラートを交換して DIV セクションを表示する方法を知っている人はいますか? jQueryファイルが含まれているので、非表示/表示効果を受け入れることができます...私が試したものはすべて機能しませんでした

4

5 に答える 5

3

return xxのランダム値を生成した後です。これは、その行の後の JavaScript コードがその関数で実行されないことを意味します。

また、if ステートメントでは、代入である「=」ではなく、「==」を使用して比較を行う必要があります。

于 2012-11-29T21:47:35.020 に答える
2

ええ、それは難しいかもしれません。return xここでも、主な問題は「==」以外にある必要があります。したがって、この

if (x=4)

本当に言うべきです:

if (x==4)

あなたが前に言ったことは、あなたは x を 4 に代入していたので、それはまったく意味がなく、すべてを台無しにするということでした。

これがお役に立てば幸いです!

于 2012-11-29T21:53:59.167 に答える
0

return xランダム値を生成した後に行う必要があります。追加する必要がありますx == 4

function WinLose()
{
var x=document.getElementById("demo");
x=x.innerHTML=Math.floor((Math.random()*5)+1);
if (x==4) {
    alert("winner!");
} else {
    alert("loser");
}
    return x;
}

デモ

于 2012-11-29T21:55:14.067 に答える
0

これは、アラートを外部化する簡略化されたバージョンです (後で使用する予定はないと思います)。

function WinLose(){
  var x=Math.floor((Math.random()*5)+1);
  document.getElementById("demo").innerHTML=x;
  return (x==5) ? "Winner!" : "Loser";
}

alert(WinLose());
于 2012-11-29T22:42:30.330 に答える
0

あなたのコード:

x=x.innerHTML=Math.floor((Math.random()*5)+1);

x受け取り中ですx.innerHTMLx.innerHTML = random number

正しい方法: (「x=」を削除)

x.innerHTML = Math.floor((Math.random()*5)+1);
于 2012-11-29T21:58:24.190 に答える