★キーコード無効タグ★


Enterキー、F5(更新)キー、BS(戻り)キーなど、サーバーに大きな負担をかける元となるキーを
JavaScriptで無効にします。無効となるキーは

※Esc(表示の中断)
※F5キー(再読み込み)
※F11キー(全画面表示)
※Ctrl+R(再読み込み)
※Ctrl+N(ウィンドウを開く)
※Altキー
※Enterキー
※BackSpace(後退キー)textarea内では有効
※Shiftキーtextarea内では有効

(1)sub HEADER 内の <head> 〜 </head> 内に以下の一行を挿入
<script type="text/javascript" src="head.js"></script>

(2)以下を head.js という名前で保存します。

//////////ここから//////////
function kdown(e) {var msg =""; var flg = 1;
switch(window.event.srcElement.tagName){
case "INPUT" :if(event.srcElement.type != "text" && event.srcElement.type != "password"
&& event.keyCode!=9 && event.keyCode!=16 && event.keyCode!=32){return false;}else{flg=0;}break;
case "TEXTAREA" :flg = 0;break;
case "SELECT" :flg = 0;break;
case "A" :flg = 2;break;
}
switch(event.keyCode){
case 8 :msg = "BS";break;
case 13 :msg = "Enter";break;
case 27 :msg = "Esc";break;
case 78 :if(event.ctrlKey){msg = "Ctrl+N";}break;
case 82 :if(event.ctrlKey){msg = "Ctrl+R";}break;
case 116 :msg = "F5";break;
case 122 :msg = "F11";break;
}
if(event.altKey){msg = "Alt";}
if (flg == 0 ){switch(event.keyCode){case 8 :msg = "";break;case 13 :msg = "";break;}}
else if (flg == 2 && event.keyCode==13)msg = "";
if(msg != ""){event.keyCode = 0;return false;}else{return true;}
}
document.onkeydown = kdown;
//////////ここまで//////////

*補足*
・どこでも Tab、Shift、Space キーは使用可能。
 (スペースキーでボタンを押す場合、連打の心配はありません)
・Aタグ(例:google)の上ではEnterキー使用可能。
・Textエリア内からEnterを押してSubmitを押す場合にも、押しっぱなしによる連打は効かず、一回のみ可
 (わかりにくくてすみません^^;)
・ボタンを押す時はクリックorスペースキーでお願いします。Enterは効きません」