質問編集履歴

1

更新したため

2020/06/19 11:54

投稿

kazu_iza
kazu_iza

スコア0

test CHANGED
File without changes
test CHANGED
@@ -2,35 +2,29 @@
2
2
 
3
3
  4×4のマスのビンゴを作っています。
4
4
 
5
+ **現状**
6
+
5
- スタートで回転が始まり、ランダムにマスの色が変わるようになっていす。
7
+ スタートでマスにランダムに色がつく。(1マス以外は白のまま)
6
-
8
+
7
- ストップで色がその時のマスに固定されます。
9
+ ストップで色がその時のマスに固定されます。
8
-
10
+
9
- もう一度スタートを押すで回転始まります
11
+ もう一度スタートを押すと同じようにランダムに色つく
10
-
12
+
11
- リセットを押すまでは一度ついた色は消えません
13
+ リセットを押すまでは一度ついた色は消えない
14
+
15
+
16
+
12
-
17
+ **今後やりたいこと**
13
-
14
-
18
+
15
- 縦、横、斜めのマスが一列でも揃えばビンゴとなり、「congratulation」の文字を出せるようにしたいです
19
+ 縦、横、斜めのどこか一列でも色がついて揃えばビンゴとなり、「congratulation」の文字を出せるようにしたい。
16
-
17
-
18
-
20
+
21
+
22
+
19
- 色が一列揃ったときに文字出現さる方法を教えていただきたいです。
23
+ 現在のコードばよいか教えていただきたいです。
20
-
21
- またリセットを押したときに文字も消えるようにもしたいです。
24
+
22
-
23
-
24
-
25
- 初心者です。お手数ですがかりやすい説明でお願いいたします。
25
+ 初心者です。お手数ですが具体的なコード付きの説明だと助かります。
26
-
27
-
28
-
29
- ### 発生している問題・エラーメッセージ
26
+
30
-
31
- ・色が一列にそろって時に文字を表示させる方法がわからない。
32
-
33
- ・リセットしたとき文字も消方法がわからない
27
+ よろくお願いいします。
34
28
 
35
29
 
36
30
 
@@ -40,42 +34,58 @@
40
34
 
41
35
  ```HTML
42
36
 
37
+ <!DOCTYPE html>
38
+
39
+ <html lang="ja">
40
+
41
+ <head>
42
+
43
+ <meta charset="UTF-8">
44
+
45
+ <title>ルーレット</title>
46
+
47
+ <link rel="stylesheet" href="roulette2.css">
48
+
49
+ <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
50
+
51
+ </head>
52
+
43
- <body>
53
+ <body>
44
-
45
- <main>
54
+
46
-
55
+
56
+
47
- <div id="result"></div>
57
+ <div id="result"></div>
58
+
59
+
60
+
48
-
61
+ <table id="t1">
49
-
50
-
62
+
51
- <table>
63
+ <tr>
64
+
65
+ <td id="panel1">1</td>
66
+
67
+ <td id="panel2">2</td>
68
+
69
+ <td id="panel3">3</td>
70
+
71
+ <td id="panel4">4</td>
72
+
73
+ </tr>
52
74
 
53
75
  <tr>
54
76
 
55
- <td id="panel1">1</td>
77
+ <td id="panel5">5</td>
56
-
78
+
57
- <td id="panel2">2</td>
79
+ <td id="panel6">6</td>
58
-
80
+
59
- <td id="panel3">3</td>
81
+ <td id="panel7">7</td>
60
-
82
+
61
- <td id="panel4">4</td>
83
+ <td id="panel8">8</td>
62
84
 
63
85
  </tr>
64
86
 
65
87
  <tr>
66
88
 
67
- <td id="panel5">5</td>
68
-
69
- <td id="panel6">6</td>
70
-
71
- <td id="panel7">7</td>
72
-
73
- <td id="panel8">8</td>
74
-
75
- </tr>
76
-
77
- <tr>
78
-
79
89
  <td id="panel9">9</td>
80
90
 
81
91
  <td id="panel10">10</td>
@@ -98,25 +108,25 @@
98
108
 
99
109
  </tr>
100
110
 
101
- </table>
111
+ </table>
102
-
103
-
104
-
112
+
113
+
114
+
105
- <div id="btn">
115
+ <div id="btn">
106
-
116
+
107
- <p id="start">スタート</p>
117
+ <button id="start">スタート</button>
108
-
118
+
109
- <p id="stop">ストップ</p>
119
+ <button id="stop">ストップ</button>
110
-
120
+
111
- <p id="reset">リセット</p>
121
+ <button id="reset">リセット</button>
122
+
112
-
123
+ <script src="roulette2.js"></script>
124
+
113
- </div>
125
+ </div>
114
-
115
-
116
-
117
- </main>
126
+
118
-
119
- </body>
127
+ </body>
128
+
129
+ </html>
120
130
 
121
131
  ```
122
132
 
@@ -124,133 +134,91 @@
124
134
 
125
135
  ```Javascript
126
136
 
127
- <script type="text/javascript">
128
-
129
- var interval_id
130
-
131
- var number=['1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16']
132
-
133
- var number_origin = ['1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16']
134
-
135
- var num;
136
-
137
-
138
-
139
- function start_roulette(){
140
-
141
- setTimeout(start,0)
142
-
143
- interval_id=setInterval(start,800)
144
-
145
- $('#start').prop('disabled',true);
146
-
147
- $('#stop').prop('disabled',false);
148
-
149
- }
150
-
151
-
152
-
153
-
154
-
155
- function start(){
156
-
157
- num=Math.floor(Math.random() * number.length);
158
-
159
- for(var i =0;i <number.length;i++){
160
-
161
- $('#panel'+number[i]).css('background-color','#fff');
162
-
163
- }
164
-
165
- $('#panel'+number[num]).css('background-color','#F58C8C');
166
-
167
- console.log('#panel'+number[num]);
168
-
169
- }
170
-
171
-
172
-
173
- function stop(){
174
-
175
- clearInterval(interval_id);
176
-
177
- $('#start').prop('disabled',false);
178
-
179
- $('#stop').prop('disabled',true);
180
-
181
- $('#panel'+number[num]).css('background-color','#F58C8C')
182
-
183
- number=number.filter(function(j){
184
-
185
- return number[num] !== j;
186
-
187
- })
188
-
189
- if(number.length<1){
190
-
191
- $('#start').prop('disabled',true);
192
-
193
- }
194
-
195
- num=null;
196
-
197
- }
198
-
199
-
200
-
201
- function reset(){
202
-
203
- clearInterval(interval_id);
204
-
205
- num = null;
206
-
207
- $('#start').prop('disabled',false);
208
-
209
- $('#stop').prop('disabled',false);
210
-
211
- number=number_origin;
212
-
213
- for(var i=0; i<number.length; i++){
214
-
215
- $('#panel'+number[i]).css('background-color','#fff');
216
-
217
- }
218
-
219
- }
220
-
221
-
222
-
223
- $(function(){
224
-
225
- $('#start').click(start_roulette);
226
-
227
- $('#stop').click(stop);
228
-
229
- $('#reset').click(reset);
230
-
231
- });
232
-
233
-
234
-
235
- document.getElementById("result").style.visibility ="none";
236
-
237
-
238
-
239
- function checkResult(){
240
-
241
- const elememt = document.getElementById("result");
242
-
243
- if
244
-
245
- result.style.visibility="visible";
246
-
247
- }
248
-
249
-
250
-
251
-
252
-
253
-
137
+ var l = 20;
138
+
139
+ var id, rand;
140
+
141
+ var dele = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16];
142
+
143
+ $(function() {
144
+
145
+ $('#start').click(roullettestart);
146
+
147
+ $('#stop').click(roullettestop);
148
+
149
+ $('#reset').click(roullettereset);
150
+
151
+ $('#stop').prop('disabled',true);
152
+
153
+ });
154
+
155
+
156
+
157
+ function roullettestart(){
158
+
159
+ id = setInterval(round,800);
160
+
161
+ $('#start').prop('disabled',true);
162
+
163
+ $('#stop').prop('disabled',false);
164
+
165
+ }
166
+
167
+
168
+
169
+ function roullettestop(){
170
+
171
+ $('td').eq(l).css('background','#ff0000');
172
+
173
+ dele.splice(rand,1);
174
+
175
+ console.log(dele.length);
176
+
177
+ l=20;
178
+
179
+ clearInterval(id);
180
+
181
+ if(dele.length!==0){
182
+
183
+ $('#start').prop('disabled',false);
184
+
185
+ }
186
+
187
+ $('#stop').prop('disabled',true);
188
+
189
+ }
190
+
191
+
192
+
193
+ function roullettereset(){
194
+
195
+ $('td').css('background','#ffffff');
196
+
197
+ l = 20;
198
+
199
+ dele=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16];
200
+
201
+ clearInterval(id);
202
+
203
+ $('#start').prop('disabled',false);
204
+
205
+ $('#stop').prop('disabled',true);
206
+
207
+ }
208
+
209
+
210
+
211
+ function round(){
212
+
213
+ $('td').eq(l).css('background','#ffffff');
214
+
215
+ rand =Math.floor(Math.random() * dele.length);
216
+
217
+ $('td').eq(dele[rand]-1).css('background','#F58C8C');
218
+
219
+ l = dele[rand]-1;
220
+
221
+ }
254
222
 
255
223
  </script>
256
224