如何获取div当前的滚动位置?

Sij*_*tha 3 javascript jquery scroll reactjs

我想知道div的滚动位置。
我左右有两个按钮,中间有一个可滚动的 div,里面填充了数据。
我想如果右侧没有数据则禁用右侧的按钮,如果左侧没有更多数据则禁用左侧的按钮。为此,我认为我需要知道当前的滚动位置。任何增强这一点的建议都会很棒。

 `    return <div className="row">
        <div ref="previous_column" onClick={this.shift_left} href="#" style={style_div}></div>
        <div className="table-container" ref="table_container"> 
            <div className="sliding-window">
                    {this.props.grocery_cart.delivery_slots.map(function(obj) {
                            return <div key={d}>
                                        <CalendarDetail values={d} ref="delivery_date"/>
                                    </div>
                    }.bind(this))}
             </div>
        </div>
        <div ref="next_column" href="#" onClick={this.shift_right} style={style_div} className="plr-slide"></div>
 </div>`
Run Code Online (Sandbox Code Playgroud)

我刚刚添加了一些相关代码。

上一列和下一列是 div(左右按钮)

Table Container是一个固定的div,里面的滑动窗口可以滑动。

Adi*_*chi 5

你可以使用 jQuery 来做到这一点,如下所示:

//axis y position (or top position)
$('[ref="table_container"]').scrollTop()
//axis x position (or left position)
$('[ref="table_container"]').scrollLeft()
Run Code Online (Sandbox Code Playgroud)

或者只使用 javascript,如下所示:

//axis y position (or top position)
document.querySelectorAll('[ref="table_container"]').scrollTop;
//axis x position (or left position)
document.querySelectorAll('[ref="table_container"]').scrollLeft;
Run Code Online (Sandbox Code Playgroud)

你可以在这里读更多关于它的内容。

Element.scrollLeft

Element.scrollLeft 属性获取或设置元素内容向左滚动的像素数。