如何更改网页中下拉滚动的初始位置?

时间:2018-06-08 14:28:14

标签: javascript jquery html angularjs drag-and-drop

当带有链接或拖动元素的鼠标到达视图端口的底部/顶部时,通常网页会自动向下滚动或向上滚动。我需要更改网页,网页或特定{{1}的开始滚动位置当拖动元素到达视口的某个距离时向下/向上滚动。如何实现这一点。我正在使用angular-drag-and-drop-lists插件。

默认滚动开始位置:

enter image description here

自定义滚动开始位置(我需要此结果): enter image description here

1 个答案:

答案 0 :(得分:1)

可能你需要一些基于drag事件的js代码。

快速html示例:

<a href="" ondrag="calcCoords(event)">Example link</a>

<script>
//Put distance you want to scroll from
var youMaxDist = 50;
var scrollSpeed = 10;

function calcCoords(event) {

   //Distance to buttom. It isn't works fine, but good enough
   var currDist = window.innerHeight - event.clientY;

   //Trigger scroll
   if(currDist < youMaxDist)
     window.scrollTo(0, document.documentElement.scrollTop + scrollSpeed);
}
</script>

另外,请注意浏览器版本支持和移动屏幕问题