1. 程式人生 > 其它 >div定時動態滾動列表

div定時動態滾動列表

技術標籤:javascriptjqueryjs

示例

每3秒列表向下滾動一行,每行高度為32,觸底或觸頂後自動反向滾動!
在這裡插入圖片描述

以下為呼叫方法

autoScroll(32,32,3000,document.getElementById('hyjbqk'));
/**
     * stepLength:一次滾動步長
     * speed:滾動速度
     * delay:停留時間
     * element:Element物件
     *
     * element.offsetHeight 元素的畫素高度(包括邊框和填充)
     * element.scrollTop 元素的內容垂直滾動的畫素
     * element.scrollHeight 元素的高度(包括帶滾動條的隱蔽的地方)
     */
function autoScroll(stepLength, speed, delay, element) { let interval; let step = 1; element.scrollTop = 0; function start() { element.scrollTop += step; interval = setInterval(scrolling, speed); } function scrolling() { if
(element.scrollTop % stepLength !== 0 && element.scrollTop != (element.scrollHeight - element.offsetHeight)) { element.scrollTop += step } else { if (element.scrollTop === 0 || element.scrollTop === (element.scrollHeight - element.offsetHeight)) { // 觸頂或觸底
step *= -1 // 轉換方向 } clearInterval(interval) setTimeout(start, delay) } } if (element.offsetHeight !== element.scrollHeight) { // 元素內容沒有溢位時,不觸發 setTimeout(start, delay) } }