<!-- 回頂部按鈕為一張50*50的圖片 -->
<!-- btnFlag 控制圖片顯示隱藏 -->
<!-- backTop 回頂部的方法 -->
<img v-if=
"btnFlag" class="go-top" src="圖片url" @click="backTop">
vue實例:
// vue的兩個生命鈎子,這里不多解釋。 // window對象,所有瀏覽器都支持window對象。它表示瀏覽器窗口,監聽滾動事件 mounted () { window.addEventListener('scroll', this.scrollToTop) }, destroyed () { window.removeEventListener('scroll', this.scrollToTop) }, methods: { // 點擊圖片回到頂部方法,加計時器是為了過渡順滑 backTop () { const that = this let timer = setInterval(() => { let ispeed = Math.floor(-that.scrollTop / 5) document.documentElement.scrollTop = document.body.scrollTop = that.scrollTop + ispeed if (that.scrollTop === 0) { clearInterval(timer) } }, 16) }, // 為了計算距離頂部的高度,當高度大於60顯示回頂部圖標,小於60則隱藏 scrollToTop () { const that = this let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop that.scrollTop = scrollTop if (that.scrollTop > 0) { that.btnFlag = true } else { that.btnFlag = false } } }