我在横幅广告中滚动的div ID内有文本。文本在加载时开始滚动,当您单击文本时,我可以停止滚动。问题是我不知道如何通过再次单击文本来重新启动滚动。
我尝试了setInterval和if条件来检查文本是否暂停无济于事。我很困惑。
function scrollIsi() {
var isi = document.getElementById('isi')
var paused = false
var requestId
var intervalId
var lastScrollTop = 0
isi.addEventListener('scroll', function () {
var st = this.scrollTop
if (st < lastScrollTop) {
cancelAnimationFrame(requestId)
}
lastScrollTop = st;
})
function scroll(timeout) {
setTimeout(function () {
paused = false
clearInterval(intervalId)
intervalId = setInterval(function () {
var pos = isi.scrollTop
isi.scrollTop = pos + 1
if (isi.scrollTop >= 1566) {
clearInterval(intervalId)
window.location = '#isi' //stopping scroller after initial run
}
}, 75)
}, 75)
}
isi.addEventListener('click', function toggleScroll() {
if(!paused) {
clearInterval(intervalId)
}
}
)
setTimeout(function () {
scroll()
}, -1000)
window.scrollTo(0, document.querySelector("#container").scrollHeight);
}
文本在加载时开始滚动,单击文本时可以暂停滚动。当我再次单击文本时,我试图重新启动滚动。