国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

vue實現導航標題欄隨頁面滾動漸隱漸顯效果

瀏覽:19日期:2023-01-31 16:24:16

項目開發中導航欄隨頁面滾動漸隱漸顯這一功能還是較為常用的,下面作一個用vue實現此功能的代碼分享。

1. 為導航欄元素style屬性用v-bind綁定data數據'opacityStyle'。

<div :style='opacityStyle'> 景點詳情 //內容我就簡約了,實際開發以需求為準</div>

2. data中定義opacityStyle,數據內容是opacity透明度屬性,設置為0。

data() { return { opacityStyle:{ opacity:0 } }}

3. 監聽scroll事件并執行相應方法,一般我習慣在activated生命周期時開始監聽(activated是keepAlive屬性下產生的一個生命周期,在進入頁面時)。

activated(){ window.addEventListener(’scroll’,this.handleScroll)}

4. 設計handleScroll()方法。通過獲取scroll滾動偏移值,指定數值對opacity屬性進行計算,讓透明度聯動變化。

methods:{ handleScroll(){ const top = document.documentElement.scrollTop //獲取scroll偏移值 if(top > 45 && top <= 150){ //實際按需求取范圍 const opacity = top / 150 //對opacity作計算,透明度從起始到1隨偏移值而改變 this.opacityStyle = {opacity} //實時返回給opacityStyle } }}

5. 對scroll監聽進行解綁。剛剛在activated()中執行監聽,同樣的我們在deactivated()中移除監聽。這一步很重要,很多人都會忽略,如果不解除將可能影響到其他頁面的scroll行為,導致項目產生bug。

deactivated(){ window.removeEventListener(’scroll’,this.handleScroll)}

以上是vue實現頁面滾動顯隱導航欄功能的代碼和邏輯,有疑惑例如keepAlive用法等不明白的地方可查看文檔另外學習~

總結

到此這篇關于vue實現導航標題欄隨頁面滾動漸隱漸顯效果的文章就介紹到這了,更多相關vue 導航標題欄滾動漸隱漸顯內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
主站蜘蛛池模板: 安龙县| 仁怀市| 英德市| 象山县| 商水县| 永靖县| 临泽县| 岳阳市| 兴安县| 汕尾市| 建湖县| 呼图壁县| 黄冈市| 禄劝| 普宁市| 拜城县| 泰来县| 平阳县| 宽甸| 汶上县| 河间市| 红原县| 西峡县| 定南县| 湖州市| 阳城县| 鲁山县| 阿勒泰市| 白银市| 马尔康县| 南乐县| 博乐市| 大庆市| 仲巴县| 枣强县| 澳门| 济南市| 栖霞市| 深水埗区| 新营市| 白山市|