だから私はdivでブラウザのスクロールバーの動作を複製しようとしていますが、これまでのところどこにも行きません。まず、私のコード、jsFiddle、および実際のコードをここで見てみましょう。
(function( $ ) {
$.widget( "ui.slider", $.ui.mouse,{
_create: function() {
this._mouseInit();
},
_mouseDrag: function(e) {
mouseOffset = (e.offsetY / this.element.height()) * 100;
handleOffset = (e.target.offsetTop / this.element.height()) * 100;
$(".handle").css("top", (mouseOffset - handleOffset) + "%");
}
});
}( jQuery ) );
ご覧のとおり、私はjqueryウィジェットを使用してマウスイベントをキャプチャしています。現在のコードでわかるように、jsFiddleでクレイジーになっています。達成したいのは、バーをクリックしてドラッグを開始すると、マウスと一緒に移動し、上下または中央などにジャンプしないでください。基本的には、ブラウザで動作するのと同じように動作するはずです。助けていただければ幸いです。