Javascript 停止在鼠标上滚动

Javascript 停止在鼠标上滚动,javascript,scroll,Javascript,Scroll,我用ScrollBy做了一个简单的onmouseDown滚动。现在我不能在它结束之前阻止它。 我希望它停止向上滚动。我试过一些东西,但没用。 这是你的密码: <button onmousedown="skrull();" onmouseup="stop();" style="position:fixed;">Click to scroll <3</button> <p>Some text and line breaks to enable scroll

我用ScrollBy做了一个简单的onmouseDown滚动。现在我不能在它结束之前阻止它。 我希望它停止向上滚动。我试过一些东西,但没用。 这是你的密码:

<button onmousedown="skrull();" onmouseup="stop();" style="position:fixed;">Click to scroll <3</button>

<p>Some text and line breaks to enable scrolling!</p>

<script>
function scrollWin() {
    window.scrollBy(0, 100);
}
skrull = function skree() {setInterval(scrollWin, 100);}
function stop() {
    clearInterval(skrull);
}
</script>

单击以滚动您的间隔需要存储在一个范围内,以便您的
stop()
函数可以访问该范围。现在您正在调用函数
skrull
上的
clearInterval
,该函数不返回任何内容

试着这样做:

<button onmousedown="skrull();" onmouseup="stop();" style="position:fixed;">Click to scroll <3</button>

<p>Some text and line breaks to enable scrolling!</p>

<script>
var skrullInterval;
function scrollWin() {
    window.scrollBy(0, 100);
}
skrull = function skree() {skrullInterval = setInterval(scrollWin, 100);}
function stop() {
    clearInterval(skrullInterval);
}
</script>

点击可滚动,棒极了!成功了。感谢您的解释和清晰的解决方案。