iT邦幫忙

0

scrollTop 問題

  • 分享至 

  • xImage

我用a href 的方法是可以做到直接跳去One,但沒有慢慢scroll的效果。

我上網只看到scrollTop function,是直接到頂,但有沒有方法可以去到直定的id又可以有scroll的效果??

<a href='#one' data-toggle='tab'>Go to One</a>
<a href='#two' data-toggle='tab'>Go to Two</a>

 <div id="one">One</div>
 .....
 <div id="two">Two</div>
 .....
froce iT邦大師 1 級 ‧ 2022-02-10 13:01:27 檢舉
https://stackoverflow.com/questions/17722497/scroll-smoothly-to-specific-element-on-page
froce iT邦大師 1 級 ‧ 2022-02-10 13:03:05 檢舉
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
這個甚至是原生的api。
F iT邦新手 3 級 ‧ 2022-02-10 14:03:40 檢舉
https://developer.mozilla.org/zh-CN/docs/Web/CSS/scroll-behavior
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

2
galaxian85
iT邦新手 4 級 ‧ 2022-02-10 13:01:33

scrollTo() 可以傳入參數 behavior: 'smooth'
就可以平滑捲動了 (safari無效)

const slideTo = (id) => {
  const position = document.getElementById(id).offsetTop;
  document.body.scrollTo({
    top: position
    behavior: 'smooth'
  });
}
0
Felix
iT邦研究生 2 級 ‧ 2022-02-10 16:24:50

自產自銷:JS 27 - 平滑滾動,讓視窗不再是閃電俠!

基本上,多數瀏覽器都支援。

我要發表回答

立即登入回答