SYNCERのロゴ
アイキャッチ画像

MouseEvent.getModifierState() - キーの状態

getModifierState()は、MouseEventのメソッドです。引数のキーを押しているか否かを返します。

概要

名前
getModifierState
所属
MouseEvent
IDL
boolean getModifierState(DOMString keyArg);
仕様書
https://w3c.github.io/uievents/#dom-mouseevent-getmodifierstate

説明

引数(keyArg)には、ボタンを表す文字列を指定します。

デモ

MouseEvent.getModifierState()のデモです。div要素にmousemoveイベントを設定しました。shiftキーを押しながら、ポインタを動かしてみて下さい。

<!-- このコードは編集できます。 -->

<!DOCTYPE html>
<html>
<head>
<style>
div#hoge {
	min-height: 120px ;
	background-color: red ;
}

div#result {
	white-space: pre-wrap ;
}
</style>
</head>
<body>
	<div id="hoge"></div>
<hr>
<div id="result"></div>
<script>
/** try it! **/
var callbackFn =  function ( event ) {
	var value = event.getModifierState( "Shift" ) ;
//	var value = event.getModifierState( "Alt" ) ;
//	var value = event.getModifierState( "Control" ) ;

	if ( value !== lastValue ) {
		console.log( value ) ;

		resultElement.innerHTML = "" ;
		resultElement.appendChild( new Text( "currentTarget: " + event.currentTarget + "(#" + event.currentTarget.id + ")" + "\n" ) ) ;
		resultElement.appendChild( new Text( "getModifierState(): " + value ) ) ;
	}

	lastValue = value ;
} ;

var lastValue ;

document.getElementById( "hoge" ).addEventListener( "mousemove", callbackFn ) ;
/** try it! **/

var resultElement = document.getElementById( "result" ) ;
</script>

</body>
</html>

サポート状況

ChromeFirefoxSafariEdgeIEOperaiOS SafariAndroid
47+ 15+× 9+ 34+××
  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2017年10月9日 (月)
コンテンツを公開しました。