JS的scrollIntoView簡單使用


  scrollIntoView方法滾動當前元素,進入瀏覽器的可見區域

el.scrollIntoView(); // 等同於el.scrollIntoView(true)
el.scrollIntoView(false);

  該方法可以接受一個布爾值作為參數。

  如果為true,表示元素的頂部與當前區域的可見部分的頂部對齊(前提是當前區域可滾動);

  如果為false,表示元素的底部與當前區域的可見部分的尾部對齊(前提是當前區域可滾動)。

  如果沒有提供該參數,默認為true。

  錨點定位是一個再熟悉不過的操作了,通常會用a標簽href=#XX去實現,不過這樣做,有一個問題,就是頁面會有刷新感,而且地址欄會有變化,F5刷新,則#XXX還是顯示在地址欄里,這樣如果要進一步進行有關地址欄url的操作,就不得不再做些判斷,所以尋找一些新的方法。如果要求不是很高,scrollIntoView()這個方法就可以取代傳統錨點定位,它是利用滾動原理,來將相應的元素滾動到可是區域內。接下來看看詳細的介紹。

  首先需要說明的是,這個方法並沒有寫入標准,但是大多數主流瀏覽器已經支持或部分支持其功能了,所以可以放心使用,當然如果有朝一日標准出來了,那就按標准來吧。其次要說明的是,這是js原生方法,jquery等框架是使用不了的,所以,獲得元素的方法一定是document.getElementById或querySelector,然后才可以點出來scrollIntoView()方法。

官方參數

  參數介紹:直接上官方看api介紹比較清晰(https://developer.mozilla.org/zh-CN/docs/Web/API/Element/scrollIntoView

使用介紹

  頁面一定要能滾動,這個方法才會生效,否則,你讓我如何給你滾動呢?

//這個title-part元素將以平滑的滾動方式滾動到與視口底部齊平地方(有兼容性問題)
document.querySelector("#title-part").scrollIntoView({ block: 'end', behavior: 'smooth' }) //這個article-part元素將以平滑的滾動方式滾動到與視口頂部齊平地方(有兼容性問題)
document.querySelector("#article-part").scrollIntoView({ block: 'start', behavior: 'smooth' }) //這個articleMU-part元素將木訥的瞬間滾動到與視口頂部齊平地方(無滾動動畫效果)
document.querySelector("#articleMU-part").scrollIntoView();//默認值就是true,可以不寫 //這個titleMU-part元素將木訥的瞬間滾動到與視口底部齊平地方(無滾動動畫效果)
document.querySelector("#titleMU-part").scrollIntoView(false)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM