私は、スクロールバーの親指の正しい位置を検出しようとしています。可能であれば、誰かに説明してください。スクロールバーのサムネイルの幅は固定されていません。私はnw.js、ES6とjQueryライブラリを使用しています。スクロールバーサムネイルの正しい位置を取得するにはどうすればよいですか?
以下は、自分のコードを簡単に抽出したものです。
class C {
constructor() {
win.on('resize', this._resize.bind(this));
$('#divId').on('scroll', this._scroll.bind(this));
}
_getXScrollbarThumbPos() {
let lpos = $('#divId').scrollLeft();
let rpos = lpos + SCROLLBAR_THUMBNAIL_WIDTH; // FIXME how can I get the scrollbarThumbnailWidth
return rpos;
}
_resize() {
let x = this._getXScrollbarThumbPos();
//..
}
_scroll() {
let x = this._getXScrollbarThumbPos();
//..
}
}
リサイズとスクロールリスナーは正常に動作します。ボトルネックはスクロールバーのサムネイルの幅を特定する方法です。 win
は、DOMウィンドウのnw.jsラッパーです。hereを参照してください(ここでは初期化は表示されていません)。