0

スクロールバーのつまみの正しい位置を検出しようとしています。これが可能かどうか誰かが説明してもらえますか。スクロールバーのサムネイルの幅は固定されていません。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();
        //..
    }
}

サイズ変更とスクロール リスナーは正常に機能します。唯一のボトルネックは、スクロールバー サムネイルの幅を決定する方法です。winDOM のウィンドウの nw.js ラッパーです。ここを参照してください(初期化は質問に関係ないため、ここでは示されていません)。

4

1 に答える 1