質問させていただきます。
Javascriptでスロットマシンを作っているのですが、
最後の「あたり」「はずれ」の判定をどうやっていいのか分かりません。
どなたか教えて下さい。
javascript
//左リールの制御
function a1() {
//aにHTMLから取得した数字を代入
var a=document.getElementById("su1").innerHTML;
//文字列のiを数字に変換し1を足してxに代入
var x=parseInt(a)+1;
//取得した値が9を超えたら1に戻す
if(x>9) {
x=1;
}
//xに書き換えてして表示する
document.getElementById("su1").innerHTML=x;
//一定期間繰り返す
TimeoutID1=setTimeout("a1()",100);
}
//スタートボタンを押すと6を表示する
function rstart() {
a2();
a1();
a3();
}
//真ん中のリールの制御
function a2() {
//iにHTMLから取得した数字を代入
var i=document.getElementById("su2").innerHTML;
//文字列のiを数字に変換し1を足してjに代入
var j=parseInt(i)+1;
//取得した値が9を超えたら1に戻す
if(j>9) {
j=1;
}
//Jに書き換えてして表示する
document.getElementById("su2").innerHTML=j;
//一定期間繰り返す
TimeoutID2=setTimeout("a2()",100);
}
//ストップボタンで止める
function stop(btn) {
if(btn == 0) {clearTimeout(TimeoutID1);}
if(btn == 1) {clearTimeout(TimeoutID2);}
if(btn == 2) {clearTimeout(TimeoutID3);}
}
//右のリールの制御
function a3() {
var c=document.getElementById("su3").innerHTML;
//文字列のiを数字に変換し1を足してjに代入
var z=parseInt(c)+1;
if(z>9) {
z=1;
}
//zに書き換えてして表示する
document.getElementById("su3").innerHTML=z;
//一定期間繰り返す
TimeoutID3=setTimeout("a3()",100);
}
HTML
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<script type="text/javascript" src="sample1.js"></script>
</head>
<body>
<form name="game">
<style type="text/css">
<!--
.surot{text-align:center;font-size:38;font-weight:bold;color:#ff0000;width:90;height:65;background-color:#0000ff;}
.surot2{font-size:14pt;font-weight:bold;color:#0000ff;text-align:center;width:96;}
-->
-->
</style>
<p style="text-align:center;font-size:24pt;font-weight:bold;">スロットマシン</p>
<table border="0" style="margin-left:150;margin-bottom:0;">
<tr>
<td id="skekka" style="font-size:34;font-weight:bold;color:#ff0000;width:200;height:40;text-align:center;"></td>
</tr>
</table>
<table style="background-color:#00ff00;border:solid #00ff00 5;margin-left:100;margin-bottom:0;">
<tr>
<td id="su1" class="surot">0<td>
<td id="su2" class="surot">0<td>
<td id="su3" class="surot">0<td>
</tr>
</table>
<table style="margin-left:100;">
<tr>
<td><input type="button" value="ストップ" onClick="stop(0)" class="surot2"></td>
<td><input type="button" value="ストップ" onClick="stop(1)" class="surot2"></td>
<td><input type="button" value="ストップ" onClick="stop(2)" class="surot2"></td>
</tr>
</table>
<div style="position:absolute;top:125;left:450;" >
<input type="button" value="スタート" onClick="rstart()" style="font-size:16pt;font-weight:bold;color:#0000ff;">
</div>
</form>
</body>
</html>
No.2
- 回答日時:
No.1
- 回答日時:
たとえばstopをこんな感じに変えてみては?
function stop(btn) {
if(btn == 0) {clearTimeout(TimeoutID1);TimeoutID1=0;}
if(btn == 1) {clearTimeout(TimeoutID2);TimeoutID2=0;}
if(btn == 2) {clearTimeout(TimeoutID3);TimeoutID3=0;}
if(!(TimeoutID1 | TimeoutID2 | TimeoutID3)){
if(document.getElementById("su1").innerHTML == document.getElementById("su2").innerHTML
&& document.getElementById("su2").innerHTML == document.getElementById("su3").innerHTML){
alert('あたり');
}else{
alert('はずれ')
}
}
}
ちなみにstopをですべて止まる前にstartが再度おされると
ちょいバグりますね
ありがとうございます。
ちなみにalertではなく、ドラムの上に結果を表示するにはどうしたら
よろしいでしょうか。
すいませんがもう少し教えて頂きたいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptでクリックするごと...
-
javascriptで画像をテーブルに...
-
selectのonChangeが動作しません
-
テーブルの行数を可変長にした...
-
javascriptでダブルクオテーシ...
-
フォームが空欄の時にフォーム...
-
tableの任意行にfocusをあてる
-
onclickで2個指定するには?
-
配列のチェックボックスをjavas...
-
ダミーフォームの内容を送信用...
-
条件により、リンク先に画面遷...
-
大量のselect要素のvalueを短い...
-
onchangeイベントを強制的に発...
-
value内に変数を入れたい
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
formを書き換えて送信する方法
-
HTML中のTABLEのデータを抽出す...
-
2段階プルダウンで1段階目の選...
-
クリックさせたいが、click()が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<JavaScript>tableタグを入力不...
-
selectのonChangeが動作しません
-
テーブルの行数を可変長にした...
-
画面表示とともに、テーブルの...
-
javascriptで<table>背景色の取得
-
javascriptでクリックするごと...
-
テキストエリアに入力した改行...
-
JQueryでテーブルの行を追加し...
-
javascriptで画像をテーブルに...
-
クリックごとに文字色が交互に...
-
カレンダーに印を付けたい
-
任意に文字数指定のできる原稿...
-
idの振り直しについて
-
tbody要素のinnerHTMLが書き換...
-
複数画像のロールオーバー
-
指定のテキストをクリックする...
-
マウスが重なったら画像の上に...
-
jQueryでの親の親の隣の子供の...
-
JavaScript 保守性の高めたい 2
-
Javascriptでの開閉リストの質問
おすすめ情報