よろしくお願いします。
外国語の単語暗記のために、問題がランダムで出てくるページを作りたいと思っています。
たとえば、一つの言葉に対して、三つの項目(外国語表記、発音、日本語訳)を設定し、それを数百語ほど入力しておきます(発音記号表示の問題についてはここでは無視してください)。ボタンを押すことによって一つあるいは複数の外国語表記が表示され、別のボタンを押すことによってその語に対する残りの項目が表示される、というような仕組みにしたいのです。
JavaSciriptで、ランダム技ができるということまでは分かりましたが、まだまだwebページ作成技術が低い私としては応用できません。上記のようなページ作成が可能であれば、お教え下さい。
また、webページよりも、例えばエクセルなどを利用した方がいい、という場合もあるでしょう。そのような情報も教えて頂けるとうれしいです。
No.2ベストアンサー
- 回答日時:
以下のようにつくってみました。
データの増やし方わかりますよね?
とりあえず試してみて!
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>random test</title>
<script type="text/javascript" charset="Shift_JIS">
var mondai_max = 4; // 問題の数
var dat = new Array();
dat[0] = new Array("one","ワン","一");
dat[1] = new Array("two","ツー","二");
dat[2] = new Array("three","スリー","三");
dat[3] = new Array("four","フォー","四");
dat[4] = new Array("","",""); // 最後につける
var mondai = mondai_max;
var soeji = new Array();
soeji["en"] = 0;
soeji["pro"] = 1;
soeji["jp"] = 2;
function f_clear() {
document.f1.reset();
mondai=Math.floor(Math.random() * mondai_max);
}
function f_write(i_name) {
document.f1.elements[i_name].value = dat[mondai][soeji[i_name]];
}
</script>
</head>
<body>
<form name="f1" onsubmit="return(false);">
<input type="button" value="new" onclick="f_clear();f_write('en');return(false);">
<input type="text" name="en"><br>
<input type="button" value="発音" onclick="f_write('pro');">
<input type="text" name="pro"><br>
<input type="button" value="意味" onclick="f_write('jp');">
<input type="text" name="jp"><br>
</form>
</body></html>
回答ありがとうございます。
思っていたとおりの機能が実現できていますね。本当に助かりました。ひな形を元に応用をする力はあると思いますので、これを自分なりに味付けてして利用していきたいと思います。
どうもありがとうございました。
No.1
- 回答日時:
回答がないようなので・・・
方法はいくつかあると思いますが私の考え方だと結構面倒?かもしれません。
1.HTMLのコーナーの質問なので。
>JavaSciriptで、ランダム技ができるということまでは分かりましたが・・・
とありますので、数百語分のHTMLファイルを作り
var ran= Math.floor(Math.random()*200 );
window.open(ran + '.htm');
でリンクする。大変そう(^^;
2.JavaSciript内で条件分岐してalertとして表示する。例えば
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS">
<TITLE></TITLE>
<SCRIPT language="JavaScript">
<!--
function rand() {
var ran= Math.floor(Math.random()*200 );
switch(ran) {
case 0 :
alert("Language");
alert("lan・guage /lgwd/");
alert("[音声・文字による]言語");
break;
case 1 :
alert("Practice");
alert("prac・tice /prkts/");
alert("練習,けいこ ");
break;
case 2 :
alert("Money");
alert("mon・ey /mni/");
alert("金(かね); 貨幣,通貨");
break;
case 3 :
alert("hogehoge");
alert("*******");
alert("ほげほげ");
break;
case 4 :
alert("asdf");
alert("*+:::;:");
alert("ほにゃら");
break;
// 5~198は省略
case 199 :
alert("Wine");
alert("wine /wn/");
alert("ワイン。葡萄酒");
break;
default :
alert("準備中です。");
break;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="f1">
<input type="button" onClick="rand()" value="問題を開く">
</form>
</BODY>
</HTML>
これも数百書くのは大変でしょうしサイズが大きくなるとレスポンスが悪くなる気がします。
JavaSciriptでも外部ファイルから読み込みが出来るかもしれませんが、当方は残念ながら知識不足です。
3.現実的にはエクセルのVBAで作ったほうが多分楽だと思います。
一覧表を作って乱数からVLOOKUP関数で表示するようにすれば追加更新も楽です。
その場合はカテゴリーを変えて質問されたらVBAエキスパートの方から回答があると思います。
あまり参考になってないですね。すみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
EJSを仕事でなんとなくで使って...
-
HTMLについて教えてください。 ...
-
レイアウトが異なる別のワーク...
-
スマホでHTMLファイルを開いて...
-
テーブルの行を折りたたみたい...
-
CSSを教えて下さい webデザイナ...
-
HTML CSSの勉強のポートフォリ...
-
excelをhtmlに変換した途端、一...
-
コードを書いて下さい( ; ; )...
-
css初心者 フレックスボックス...
-
HTMLタグのあるCSVファイルを利...
-
CSSを教えて下さい webデザイナ...
-
、URL化させるにはどうしたらい...
-
WEBページを強制的に横画面で見...
-
CSSファイルの日本語コメントが...
-
webディベロッパーについて詳し...
-
CSSでinputのテキストカラーを...
-
2カラム、左メニュー、特定パー...
-
このサイトのカテゴリのチェッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
INPUTタグ disabledの文字色を...
-
TEXTAREAにワードパッド風の簡...
-
タグ初心者
-
Excelマクロ 空白セルを無視し...
-
バッチ処理 特定の文字以降を...
-
VBAでcsvファイルもシートもあ...
-
ダブルコーテーション付きでCSV...
-
【ExcelVBA】300万件越えCSVか...
-
ファイル名を変数で書きこむfwr...
-
Access VBA エラー2448について
-
EXCEL→CSV保存時のダブルクォー...
-
VBA テキストボックスを選択状...
-
[コンパイルエラー 修飾子が不...
-
複数のファイルをまたぐエクセ...
-
VBAで複数のCSVからレコードセ...
-
fortranでNAのあるデータを読み...
-
CSVデータの文字列置換
-
verilog HDLについての質問です...
-
VB.netでShellExecuteがしたい
-
Fortran:列数の分からないデー...
おすすめ情報