更新日 Friday, 07-Dec-2012 11:56:18 JST

Perl 入門講座

よみがな自動表示

Get_Yomi.js 全ソース
// ///////////////////////// 読み仮名変換 ///////////////////////// // エンターキー(確定) keyCode == 13 // スペースキー(変換) keyCode == 32 // DEL キー = 46 // ← =37 var key_code; // キーコード値 var str=""; var Enter1=0; // 漢字変換の回数 var Enter2=0; // 漢字変換の回数 var Yomi1= new Array(); // ひらがな保管庫 var Yomi2= new Array(); // ひらがな保管庫 var Kanji1=""; // 漢字 var Kanji2=""; // 姓-------------------------------------------------------------- function read_Sei() { key_code = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; str = document.getElementById('Kanji_Sei').value; if (key_code == 32 || key_code ==37) { } else { if (key_code == 13) { // エンターキー(確定) Enter1 ++; Kanji1 = str; } if (key_code != 13 && key_code != 32) { var Add_temp= str.replace(Kanji1, ""); var Hiragana_add=""; // 『ひらがな』のみ追加されるようにする---------- for (var n=0; n < Add_temp.length; n ++) { var Moji=Add_temp.charAt(n); var Moji_code= Add_temp.charCodeAt(n); if (12352 < Moji_code && Moji_code < 12436) { Hiragana_add += Moji; } } Yomi1[Enter1] = Hiragana_add; //----------------------------------------------- var Hokan=""; for (var n=0; n < Yomi1.length; n ++) { Hokan += Yomi1[n]; } document.getElementById('Yomi_Sei').value = Hokan; } } if (key_code ==46) { // DEL キー var Max= Kanji1.length; // 漢字入力欄の文字列 Max --; // 漢字欄の最後の文字 var Last_Moji= Kanji1.charAt(Max); // 文字 var Last_code= Kanji1.charCodeAt(Max); // コード var Del_Flag=0; // 削除実行旗 if (Max < 0) {Del_Flag=1} // 全削除(文字数なし) if (19967 < Last_code && Last_code < 40870) {Del_Flag=2} // 漢字で削除 if (63743 < Last_code && Last_code < 64046) {Del_Flag=2} // 漢字で削除 if (85503 < Last_code && Last_code < 106406) {Del_Flag=2} // 漢字で削除 if (Del_Flag==1) {document.getElementById('Yomi_Sei').value="";} if (Del_Flag==2) { var Hokan=""; for (var n=0; n < Max; n ++) { Hokan += Yomi1[n]; } document.getElementById('Yomi_Sei').value = Hokan; } } // 全クリア if (str == "") { Enter1=0; Kanji1=""; document.getElementById('Yomi_Sei').value=""; } } function read_Mei() { key_code = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; str = document.getElementById('Kanji_Mei').value; if (key_code == 32 || key_code ==37) { } else { if (key_code == 13) { // エンターキー(確定) Enter2 ++; Kanji2 = str; } if (key_code != 13 && key_code != 32) { var Add_temp= str.replace(Kanji2, ""); var Hiragana_add=""; // 『ひらがな』のみ追加されるようにする---------- for (var n=0; n < Add_temp.length; n ++) { var Moji=Add_temp.charAt(n); var Moji_code= Add_temp.charCodeAt(n); if (12352 < Moji_code && Moji_code < 12436) { Hiragana_add += Moji; } } Yomi2[Enter2] = Hiragana_add; //----------------------------------------------- var Hokan=""; for (var n=0; n < Yomi2.length; n ++) { Hokan += Yomi2[n]; } document.getElementById('Yomi_Mei').value = Hokan; } } if (key_code ==46) { var Max= Yomi2.length; Max -=2; if (Max < 0) {document.getElementById('Yomi_Mei').value="";} else { var Hokan=""; for (var n=0; n < Max; n ++) { Hokan += Yomi2[n]; } document.getElementById('Yomi_Mei').value = Hokan; } } // 全クリア if (str == "") { Enter2=0; Kanji2=""; document.getElementById('Yomi_Mei').value=""; } } // ----------------------------------------------------------------------------- 呼び出しフォーム # [1] print "<tr>\n"; print "<td background=\"./images/item_back.bmp\" width=22%>  漢字で氏名</td>\n"; print "<td>姓<input type=text style=\"ime-mode: active\" size=38 name=d_1 id=\"Kanji_Sei\" value=\"\" style=\"ime-mode: active; background-color:lightcyan;\" onkeypress=\"return handleEnter(this, event)\" onMouseover=\"setColor(this,'yellow')\" onMouseout=\"setColor(this,'lightcyan')\" onkeyup=\"read_Sei(this.form)\">\n"; # [2] print "名<input type=text style=\"ime-mode: active\" size=38 name=d_2 id=\"Kanji_Mei\" value=\"\" style=\"ime-mode: active; background-color:lightcyan;\" onkeypress=\"return handleEnter(this, event)\" onMouseover=\"setColor(this,'yellow')\" onMouseout=\"setColor(this,'lightcyan')\" onkeyup=\"read_Mei(this.form)\">\n"; print "</td>\n"; print "</tr>\n";


The first written on Dec 7, 2012


更新日 Friday, 07-Dec-2012 11:56:18 JST

[201]