タイトルで述べたように、dijit.form.Slider のマウスホイール機能を削除したいのは、ページをスクロールしてカーソルがスライダーに当たったときにスライダーがトリガーされることがあるからです。
しかし、onmousewheel イベントは dojo ソースで接続されているようで、dojo ファイルを置換または変更することはできません。
短い解決策(最適には宣言的な解決策)を知っている人はいますか?
ありがとう
タイトルで述べたように、dijit.form.Slider のマウスホイール機能を削除したいのは、ページをスクロールしてカーソルがスライダーに当たったときにスライダーがトリガーされることがあるからです。
しかし、onmousewheel イベントは dojo ソースで接続されているようで、dojo ファイルを置換または変更することはできません。
短い解決策(最適には宣言的な解決策)を知っている人はいますか?
ありがとう
これを行う最も簡単な方法は、スライダー ウィジェットの _mouseWheeled メソッドを上書きすることです。
宣言例:
<div dojoType="dijit.form.VerticalSlider" name="vertical1" id="slider2" ... >
<script type="dojo/method" event="_mouseWheeled"></script>
...
</div>
プログラム例、単一インスタンス:
dijit.byId('mySlider')._mouseWheeled = function() {};
プログラマティック、すべてのインスタンス:
dojo.extend(dijit.form.HorizontalSlider, {
_mouseWheeled: function() {}
});
VerticalSlider
( から継承するため、これは水平および垂直スライダーの両方をカバーしHorizontalSlider
ます。)