WEBアプリでファンクションキーを使う

<script type="text/javascript">
<!--
function estop(e) {
	// Mozilla(Firefox, NN) and Opera 
	if (e != null) {
		// イベントの上位伝播を防止 
		e.preventDefault(); 
		e.stopPropagation(); 
	// Internet Explorer 
	} else {
		// イベントの上位伝播を防止 
		event.returnValue = false; 
		event.cancelBubble = true; 
		event.keyCode = 0;
	}
	return true;
}

document.onkeydown = function(e) {
	var shift, ctrl; 

	// Mozilla(Firefox, NN) and Opera 
	if (e != null) {
		keycode = e.which;
		tagname = e.target.tagName.toUpperCase();
		ctrl    = typeof e.modifiers == 'undefined' ? e.ctrlKey : e.modifiers & Event.CONTROL_MASK; 
		shift   = typeof e.modifiers == 'undefined' ? e.shiftKey : e.modifiers & Event.SHIFT_MASK; 

	// Internet Explorer 
	} else { 
		keycode = event.keyCode; 
		tagname = window.event.srcElement.tagName.toUpperCase();
		ctrl    = event.ctrlKey; 
		shift   = event.shiftKey; 
	} 

	switch(keycode){
	case 27 :
		if ( tagname == "TEXTAREA" ) {
			alert('Escキーをキャンセルしました');
			estop(e);
		}
		break;
	case 112 : //F1
		location.href = "http://yahoo.co.jp/";
		estop(e);
		break;
	case 113 : //F2
		location.href = "http://www.google.co.jp/webhp?complete=1&hl=ja";
		estop(e);
		break;
	case 116 : //F5
		location.href = "http://www.excite.co.jp/";
		estop(e);
		break;
	case 121 : //F12
		location.href = "http://www.excite.co.jp/";
		estop(e);
		break;
	default :
		//デバック用
		//alert(keycode + 'が押されました');
		return true;
	}
	return false;
}

//-->
</script>
The following two tabs change content below.
しゃちょー

しゃちょー

有限会社こだまシステム社長。18歳の時からIT業界で働く。趣味はモータースポーツ。マイブームはダイエット。

関連記事

プリウス以上のエコカー

ちょっと画像で遊んでみました…

Mastodonで出来ること、出来ないこと。

Mastodonのインスタンスを立ち上げて色々と試してみたので、情報共有します!

【linuxで画像加工】dcrawのコンパイル

# gcc -o dcraw -O4 dcraw.c -lm -DNO_JPEG -DNO_LCMS The […]

PHPでcsvを2次元配列に読み込む

<?php $file_name = “data.csv”; $fp = fopen( $file_na […]

【linuxで画像加工】RAW(CR2)を16bitのPPMファイルに現像

カレントディレクトリにあるCanonRawフォーマットのデータを16bitのPPMファイルに現像する。