マウスホイールを使用して特定の形で数の増加または減少を達成するか、スクロールホイールがボタンの左右を制御し、上下にスクロールすることを実現します。これらはすべて、JSのマウスホイールのイベント監視を通じて達成されます。今日は、マウスホイールイベントをリスニングする少しシンプルなJSを紹介します。
さまざまなブラウザのさまざまなイベント
まず第一に、さまざまなブラウザには異なるスクロールイベントがあります。主に2つのタイプがあります:オンマウスホイール(Firefoxはサポートしていません)とDommouseScroll(Firefoxのみがサポートするだけです)。ここでは、これら2つのイベントについて詳しく説明しません。知りたい場合は、MouseWheel(MouseWheel)およびDommouseScrollイベントを移動してください。
さらに、操作中にイベントリスニングを追加する必要があります。コードは次のとおりです。Firefoxと互換性があり、AddEventListenerを使用して聞きます
次のようにコードをコピーします:/*イベントを登録*/
if(document.addeventlistener){
document.addeventlistener( 'dommouseScroll'、scrollfunc、false);
} // w3c
window.onmousewheel = document.onmousewheel = scrollfunc; // ie/opera/chrome
JS数値を返して、スクロールホイールの上下を決定します
スクロールホイールが上下するかどうかを判断する際には、ブラウザでも互換性を考慮する必要があります。 Firefoxは、5つの主要なブラウザ(IE、Opera、Safari、Firefox、Chrome)で詳細を使用し、他の4つのカテゴリはWheeldeltaを使用しています。 2つは価値の点でのみ一貫性がありません。つまり、意味は一貫しています。ディテールとホイールデルタはそれぞれ2つの値のみを取得します。詳細は±3、ホイールデルタは±120しかかかりません。ポジティブ数はアップとして表され、負の数はダウンとして表されます。
特定のコードは次のとおりです。
コードコピーは次のとおりです。
<label for = "whieldelta">スクロール値:</label>(ie/opera)<入力型= "text" id = "whieldelta"/>
<label for = "detail">スクロール値:( firefox)</label> <入力型= "text" id = "detail"/>
<script type = "text/javascript">
var scrollfunc = function(e){
e = e || window.event;
var t1 = document.getElementById( "whieldelta");
var t2 = document.getElementById( "詳細");
if(e.wheeldelta){// ie/opera/chrome
t1.value = e.wheeldelta;
} else if(e.detail){// firefox
t2.value = e.detail;
}
}
/*登録イベント*/
if(document.addeventlistener){
document.addeventlistener( 'dommouseScroll'、scrollfunc、false);
} // w3c
window.onmousewheel = document.onmousewheel = scrollfunc; // ie/opera/chrome
</script>
上記のコードを実行することで、次のことがわかります。
コードコピーは次のとおりです。
ノンファイアフォックスブラウザでは、スクロールホイールのスクロールアップによって返される値は120で、スクロールダウンによって返される値は-120です。
Firefoxブラウザでは、スクロールホイールのスクロールアップによって返される値は-3で、スクロールダウンによって返される値は3です。
コード部分は次のとおりです。E.WheelDeltaは、それが非ファイアフォックスブラウザであるかどうかを決定し、E.DetailはFirefoxブラウザーです
if(e.wheeldelta){// ie/opera/chrome
t1.value = e.wheeldelta;
} else if(e.detail){// firefox
t2.value = e.detail;
}
PS:ここでは、JSイベントに関するオンラインクエリツールをお勧めします。これは、一般的に使用されるイベントタイプとJSの関数関数を要約しています。
JavaScriptイベントと機能の完全なリスト:
http://tools.vevb.com/table/javascript_event