2016-11-11 11 views
-1

2つのサイコロを振ってこの問題を抱えています。2つのサイコロを無作為に(URLを使用して)ローリングする

私のサーバーにはダイス写真があります。

私はいくつかの非常に単純なことを間違っていなければなりませんが、今は何かを理解できません。ここで

は私が作ったこのタスクのページへのURLです:

var n1 = document.getElementsById("noppa1"); 
 
var n2 = document.getElementsById("noppa2"); 
 
var pari = document.getElementById("pari"); 
 
var pairs = ["Ykköset", "Kakkoset", "Kolmoset", "Neloset", "Vitoset", "Kutoset"]; 
 

 
function pelaa() { 
 
    var dice1 = Math.floor(Math.random() * (6)) + 1; 
 
    var dice2 = Math.floor(Math.random() * (6)) + 1; 
 
    var url1 = "noppakuvat/noppa" + dice1 + ".jpg"; 
 
    var url2 = "noppakuvat/noppa" + dice2 + ".jpg"; 
 

 
    n1.src = url1; 
 
    n2.src = url2; 
 

 
    if dice1 == dice2 { 
 
    pari.innerHTML = pairs.[dice1 - 1]; 
 
    } else pari.innerHTML = ""; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<button type="button" id="button" onClick="pelaa()">Pelaa</button> 
 
<p> 
 
    <img src="noppakuvat/noppa1.jpg" id="noppa1" /> 
 
    <img src="noppakuvat/noppa1.jpg" id="noppa2" /> 
 
</p> 
 

 
<p id="pari"></p>

+1

dice1 == dice2 {'なら' if(dice1 == dice2){'とする必要があり、' pari.innerHTML = pairs。[dice1]のエラーが出ます - 1];これはドットなしでなければなりません。またdocument.getElementsByIdは単数である必要があります – mplungjan

+0

Typo: 'getElementsById'は' getElementById'でなければなりません –

+0

ありがとうございます。その後者のエラーについて、私が配列(ペア)からn番目の要素を "取り出したい"とき、どうすればいいでしょう。 –

答えて

1
  • if dice1 == dice2 {http://rockworksstudio.fi/mamk/js/ot4/ot4b.html

    そして、ここでは、そのページ上の私の現在のコードです必要がありますif (dice1 == dice2) {

  • pari.innerHTML = pairs.[dice1 - 1];はドットなしでなければなりません。
  • document.getElementsByIdはサイコロをありがとうアンドリュー骨

単数形にする必要がある:)

var n1 = document.getElementById("noppa1"); 
 
var n2 = document.getElementById("noppa2"); 
 
var pari = document.getElementById("pari"); 
 
var pairs = ["Ykköset", "Kakkoset", "Kolmoset", "Neloset", "Vitoset", "Kutoset"]; 
 

 
function pelaa() { 
 
    var dice1 = Math.floor(Math.random() * (6)) + 1; 
 
    var dice2 = Math.floor(Math.random() * (6)) + 1; 
 
    var url1 = "https://www.random.org/dice/dice" + dice1 + ".png"; 
 
    var url2 = "https://www.random.org/dice/dice" + dice2 + ".png"; 
 

 
    n1.src = url1; 
 
    n2.src = url2; 
 

 
    if (dice1 == dice2) { 
 
    pari.innerHTML = pairs[dice1 - 1]; 
 
    } else { 
 
    pari.innerHTML = ""; 
 
    } 
 
}
https://www.random.org/dice/dice1
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<button type="button" id="button" onClick="pelaa()">Pelaa</button> 
 
<p> 
 
    <img src="https://www.random.org/dice/dice1.png" id="noppa1" /> 
 
    <img src="https://www.random.org/dice/dice1.png" id="noppa2" /> 
 
</p> 
 

 
<p id="pari"></p>

+2

、このような質問は、将来のユーザーを支援しない、タイプミスとしてクローズする必要があり、自明で見ることによって解決されるお楽しみくださいDEVコンソール。私が知っている –

+0

。しかし私はすでにそれを書いていたし、誰かがコメントを取るとき、私は嫌い、答えを投稿し、私はデバッグをした後にそれが受け入れられます。質問はまだ上ではないように思われる。彼は明らかに多くの問題を持っていました – mplungjan

+0

とどうしてあなたは投票に投票する必要があるので、誰も答えません。 –

1

あなたはあなたのコード内のいくつかの構文エラーを得ました。

ERROR1

if (dice1 == dice2) { 

ERROR2

if dice1 == dice2 { // error 1, add parenthesis 

になる必要があります。

pari.innerHTML = pairs.[dice1 - 1]; // error 2, remove dot 
:ペアの配列からドットを削除した場合に文の条件にかっこを追加

なる必要があります。

pari.innerHTML = pairs[dice1 - 1]; 

ERROR3:そこにはgetElementsById機能はありませんが、getElementByIdを

var n1 = document.getElementsById("noppa1"); // error 3, change getElementsById to getElementById 
var n2 = document.getElementsById("noppa2"); 

はなるはずです:あなたが望むよう

var n1 = document.getElementById("noppa1"); // error 3, change getElementsById to getElementById 
var n2 = document.getElementById("noppa2"); 

次に、あなたはすべてが動作している必要があります。

+0

@mplungjanを削除することを意味します。私はあなたの入力中に答えを入力していた。私はあなたのコメントのポイントが表示されません。 –

+0

私はこれらのすべてに16分前にコメントして8分前に答えました。それはあなたがそれを書く時間がかかった場合、私は謝罪します。それでも閉じてください – mplungjan

+1

実際には、これをデバッグして書き留めるのに5分ほどかかりました。私は質問を開いたときに答えがあったことも、答えを投稿するためにヒットしたことも見なかった。はい、これは閉めることができる人によって閉じられるべきです。 –

関連する問題