題目の通りの症状です。知識不足でどこを直したらいいのかどうもよくわかりません。どなたかご教示をお願いします。
症状としては、クリックするとtdが消えて字だけが表示されてしまいます。字をクリックすると字が順繰りに変わる点は機能していますが、どうにかしてtdが消えずにその中に字を表示したいのですが。どうぞよろしくお願いします。
*///////////
<table id="mondaiBox">
<tr><td id="mondai">a</td></tr>
</table>
<script>
var n=1;
var flag = [];
var mondai = ['a','i','u','e','o','ka','ki','ku','ke','ko','sa','shi','su','se','so'];
function changeChr() {
var strMondai='';
for(var i=0;i<n;i++){
do x=Math.floor(Math.random()*mondai.length); while(flag[x])
flag[x]=true;
strMondai+=mondai[x];
}
document.getElementById("mondaiBox").innerHTML=strMondai;
}
var strMondai = document.getElementById("mondaiBox");
mondaiBox.addEventListener("click", changeChr, false);
</script>
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
一周したら終了なのか繰り返すのか不明なので、ひとまず繰り返しと考えるなら…
(なので、再シャッフルの際に連続する可能性があります)
以下のような感じではいかが?
const mondai = ['a','i','u','e','o','ka','ki','ku','ke','ko','sa','shi','su','se','so'];
const a = [];
document.getElementById('mondai').addEventListener('click', e => {
if(!a.length) {
for(let i = 0; i < mondai.length; i++) a[i] = i;
for(let i = a.length - 1; i > -1; i--){
const j = Math.floor(Math.random() * (i + 1));
[a[i], a[j]] = [a[j], a[i]];
}
}
e.target.textContent = mondai[a.pop()];
});
いやー、すごいですね。お手のもんなんですね。
おかげさまで、思いの通り実現できましたました。
あれこれ無駄に試したり悩んだことがすっかり解消です。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<JavaScript>tableタグを入力不...
-
javascriptでスロットマシン
-
クリックするとそのセル一行(...
-
jquery.csv2table.jsのテーブル
-
googleカンダーようにドラック...
-
新しいウィンドをリンク指定し...
-
プルダウンメニューを表の中に...
-
javascriptでダブルクオテーシ...
-
POST時に要素を削除してからPOST
-
Javascriptの"return "について
-
プルダウン 項目が多いので先頭...
-
ラジオボタンの選択に応じてプ...
-
return trueとreturn falseの用...
-
jsで、配列内の文章を改行する...
-
ボタン2回押しを無効にしたい
-
textarea-Aからtextarea-Bに文...
-
ctrl+vを無効にする方法
-
tabindexの取得
-
HTMLのフォーム名とJavaScript...
-
selectで選ばれた値を別ページ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<JavaScript>tableタグを入力不...
-
selectのonChangeが動作しません
-
画面表示とともに、テーブルの...
-
プルダウンメニューを表の中に...
-
javascriptでクリックするごと...
-
テキストエリアに入力した改行...
-
テーブルの行数を可変長にした...
-
半透明のテーブル
-
このjavascriptがわかりません
-
javascriptのカルーセル
-
javascriptで<table>背景色の取得
-
jquery にて、アラートダイアロ...
-
javascriptで表に画像を貼る
-
任意に文字数指定のできる原稿...
-
文字を隠すゲーム
-
onMouseでbackgroundの画像を変...
-
テーブルのセルのクリック時、...
-
テーブルの生成
-
idの振り直しについて
-
<iframe>内にHTMLをランダム表...
おすすめ情報