国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

js控制滾動(dòng)條滾動(dòng)的兩種簡(jiǎn)單方法

瀏覽:2日期:2022-06-13 11:46:17
目錄 方法一 方法二總結(jié) 方法一

JavaScript 可以通過(guò)操作 scrollTop 屬性來(lái)控制元素的滾動(dòng),以下是一個(gè)簡(jiǎn)單的示例代碼:

var element = document.getElementById('myElement'); // 獲取需要滾動(dòng)的元素element.scrollTop = 100; // 滾動(dòng)到距離頂部100像素的位置

在上面的示例中,首先通過(guò) document.getElementById 獲取需要滾動(dòng)的元素,然后設(shè)置 scrollTop 屬性為需要滾動(dòng)到的位置,即可實(shí)現(xiàn)控制滾動(dòng)條滾動(dòng)。

如果需要平滑滾動(dòng),可以使用 window.requestAnimationFrame 方法來(lái)實(shí)現(xiàn)動(dòng)畫效果,示例代碼如下:

var element = document.getElementById('myElement'); // 獲取需要滾動(dòng)的元素var targetPosition = 100; // 滾動(dòng)到距離頂部100像素的位置var duration = 500; // 滾動(dòng)動(dòng)畫的持續(xù)時(shí)間(毫秒)var startTime = null; // 動(dòng)畫開始時(shí)間 function scrollTo(timestamp) { if (!startTime) startTime = timestamp; var progress = timestamp - startTime; var position = Math.min(progress / duration * targetPosition, targetPosition); element.scrollTop = position; if (progress < duration) { window.requestAnimationFrame(scrollTo); }} window.requestAnimationFrame(scrollTo); // 開始滾動(dòng)動(dòng)畫

在上面的示例中,首先獲取需要滾動(dòng)的元素和目標(biāo)位置,然后設(shè)置動(dòng)畫的持續(xù)時(shí)間。在 scrollTo 函數(shù)中,通過(guò)計(jì)算當(dāng)前進(jìn)度和位置,來(lái)實(shí)現(xiàn)平滑的滾動(dòng)效果。在滾動(dòng)動(dòng)畫未完成時(shí),調(diào)用 window.requestAnimationFrame 方法來(lái)繼續(xù)滾動(dòng),直到動(dòng)畫完成為止。

方法二

獲取滾動(dòng)距離

window.addEventListener('scroll', () => { scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop; })const ScrollTop = (number = 0, time) => { if (!time) { document.body.scrollTop = document.documentElement.scrollTop = number; return number; } const spacingTime = 20; // 設(shè)置循環(huán)的間隔時(shí)間 值越小消耗性能越高 let spacingInex = time / spacingTime; // 計(jì)算循環(huán)的次數(shù) let nowTop = document.body.scrollTop + document.documentElement.scrollTop; // 獲取當(dāng)前滾動(dòng)條位置 let everTop = (number - nowTop) / spacingInex; // 計(jì)算每次滑動(dòng)的距離 let scrollTimer = setInterval(() => { if (spacingInex > 0) { spacingInex--; ScrollTop(nowTop += everTop); } else { clearInterval(scrollTimer); // 清除計(jì)時(shí)器 } }, spacingTime);}

調(diào)用示例

ScrollTop(scrollTop, 500)總結(jié)

到此這篇關(guān)于js控制滾動(dòng)條滾動(dòng)的兩種簡(jiǎn)單方法的文章就介紹到這了,更多相關(guān)js控制滾動(dòng)條滾動(dòng)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: JavaScript
主站蜘蛛池模板: 免费一级欧美大片在线观看 | 国产精品日韩欧美一区二区 | 亚洲视频在线精品 | 伊人成人在线视频 | 国产成人a福利在线观看 | 波多野结衣一区二区三区88 | 午夜刺激爽爽视频免费观看 | 亚洲天堂手机在线 | 免费观看视频成人国产 | 国产亚洲精品看片在线观看 | 中文字幕精品一区二区三区视频 | 日本在线亚州精品视频在线 | 日本亚洲欧美国产日韩ay高清 | 欧美一级毛片免费看视频 | chinese性老妇中国 | 国产午夜亚洲精品理论片不卡 | 国产精品亚洲二线在线播放 | 亚洲自偷自偷图片在线高清 | 日本加勒比一区 | 欧美性色黄大片一级毛片视频 | 一级毛片一级毛片一级毛片 | 小毛片在线观看 | 日本一级特黄a大片 | 欧美又粗又硬又大久久久 | 在线视频久久 | 久久综合综合久久 | 国产九九精品视频 | 青青草福利视频 | 国产步兵社区视频在线观看 | 嫩草一区二区三区四区乱码 | 日韩美女强理论片 | 欧美在线一级va免费观看 | 国产一级黄色网 | 三级中文字幕永久在线视频 | 五月激激激综合网色播免费 | 欧美aa一级| 欧美日韩色黄大片在线视频 | 精品国产免费观看 | 国产精品7m凸凹视频分类大全 | 国产成人精品aaaa视频一区 | a级毛片在线视频免费观看 a级免费 |