我有一个可滚动的列表。它的overflow-y属性设置为可滚动,我可以使用滚动条进行滚动,但是我希望能够使用鼠标上下拖动。
这是我到目前为止所拥有的
//Allows the user to scroll by dragging the mouse
element.on({
'mousemove': function(e)
{
if (self.get('clicked'))
{
const difference = self.get('clickY') - element.scrollTop();
const scrollY = difference + (e.pageY - element.offset().top);
element.scrollTop(scrollY);
}
},
'mousedown': function (e)
{
const clickY = (e.pageY - element.offset().top) + element.scrollTop();
self.set('clicked', true);
self.set('clickY', clickY);
},
'mouseup': function (e)
{
self.set('clicked', false);
},
'mouseleave': function(e)
{
self.set('clicked', false);
}
});
我一直在使用它,但是无法正确处理,因为我必须考虑元素的y位置,它已经滚动了多少,mouseY等。有人可以帮助我解决这个问题吗?这个吗?