• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascript 神経衰弱 表に返す時間)

JavaScript神経衰弱表に返す時間

このQ&Aのポイント
  • JavaScript初心者のための神経衰弱作成方法と、2枚のカードを表にしたときの表示時間中に3枚目のカードをクリックできないようにする方法について質問しています。
  • 質問者は神経衰弱のスクリプトを作成しており、一応単純な骨組みは作れていますが、3枚目のカードをクリックできないようにする方法がわからないと困っています。
  • 連打してクリックすると、2枚のカードを判定している最中に3枚目のカードをクリックしてしまい、スクリプトが正常に動作しなくなります。解決策を教えてほしいと質問者はアドバイスを求めています。

質問者が選んだベストアンサー

  • ベストアンサー
  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.2

カードが不揃いの場合を「3枚目以降は何もしない」状態にすれば、 次のカードが開けません。 switch(card_c) { case 0: card_c++; 1枚目を開いた処理(); break; case 1: card_c++; 2枚目を開いた処理(); break; default: 3枚目以降は何もしない(); } card_c を 0 に戻すタイミングですが、 二枚がそろった場合は、2枚目を開いた処理() の中で 二枚がちがった場合は、bunki() の中で -- 回答とは関係ありませんが、せっかくなので提案です。 間違えた場合に簡易アニメーションをしているので、全部裏返す処理も、 1枚目裏返す→N秒後に2枚目裏返す→...→N秒後に8枚目裏返す とアニメをしてはいかがでしょうか。

komado45oji4768
質問者

お礼

お返事ありがとうございます。 switch分で分岐させればいいのですね。 ありがとうございます。 裏返す処理は次の追加要素にしたいと思います。

その他の回答 (1)

回答No.1

「時間」で管理しようとすると面倒だと思うので、 ・2枚目を開けたときにフラグON。 ・フラグが立っていたらクリック時の処理をしないようにする。 ・待ち時間後の処理でフラグOFF でどうでしょうか。

komado45oji4768
質問者

お礼

お返事ありがとうございます。 なるほど、フラグを立てるという考え方もあるのですね。 ありがとうございます。 参考にさせていただきます。