当我在javascript div中使用上述功能在聊天框中自动滚动时 但我无法向上滚动。
cdef
聊天记录是我的代码中的一个div,我已经将上面的函数用于滚动回复。现在我无法向上滚动。
答案 0 :(得分:2)
这是合乎逻辑的错误。在您的代码中,每10毫秒,您的脚本将div滚动到底部。如何实现自动滚动行为有很多变种。其中一个使用flag,它将由checkBox(autoscroll)设置。如果选中了checkBox,如果取消选择脚本将不执行任何操作,脚本将向下滚动。
类似的东西:
window.setInterval(function() {
if (needAutoScroll) {
var elem = document.getElementById('chatlog');
elem.scrollTop = elem.scrollHeight;
}
}, 10);
答案 1 :(得分:0)
我的猜测是,因为它每秒向下滚动到div的底部,所以你无法向上滚动。因此,在向上滚动时,您必须清除setInterval
功能。
您可以在chatlog
div。
<div id="chatlog" onscroll="myStopFunction()">
function myStopFunction() {
if document.body.scrollTop <= 0 {
console.log("scrolling down")
} else {
console.log("scrolling up");
clearInterval(myVar);
}
}
再次向下滚动,您可以触发setInterval
功能。