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

WheelEvent.deltaMode - スクロール量の単位

deltaModeは、WheelEventのプロパティです。ホイールのスクロール量をどの単位で表現しているか、を表す数値を返します。各数値は定数に対応しています。

概要

名前
deltaMode
所属
WheelEvent
IDL
readonly attribute unsigned long deltaMode;
仕様書
https://w3c.github.io/uievents/#dom-wheelevent-deltamode

説明

スクロール量の単位を表す数値。

DOM_DELTA_PIXEL (0x00)
スクロール量はピクセル数で表現されている。
DOM_DELTA_LINE (0x00)
スクロール量は行数で表現されている。
DOM_DELTA_PAGE (0x00)
スクロール量はページ数で表現されている。

デモ

WheelEvent.deltaModeのデモです。div要素にwheelイベントを設定しました。要素上で色々とホイールを回してみて下さい。ここでは、スクロール量はピクセル単位で表現されているため、0x00が返ります。

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

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

div#result {
	white-space: pre-wrap ;
}
</style>
</head>
<body>
	<div id="hoge"></div>
<hr>
<div id="result"></div>
<script>
/** try it! **/
var element = document.getElementById( "hoge" ) ;

var callbackFn =  function ( event ) {
	event.preventDefault() ;
	console.log( "deltaMode", event.deltaMode ) ;

	resultElement.innerHTML = "" ;
	resultElement.appendChild( new Text( "currentTarget: " + event.currentTarget + "(#" + event.currentTarget.id + ")" + "\n" ) ) ;
	resultElement.appendChild( new Text( "deltaX: " + event.deltaX + "\n" ) ) ;
	resultElement.appendChild( new Text( "deltaY: " + event.deltaY + "\n" ) ) ;
	resultElement.appendChild( new Text( "deltaZ: " + event.deltaZ + "\n" ) ) ;
	resultElement.appendChild( new Text( "deltaMode: " + event.deltaMode + "\n" ) ) ;
} ;

element.addEventListener( "wheel", callbackFn ) ;
/** try it! **/

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

</body>
</html>

サポート状況

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