vue.js實現(xiàn)標(biāo)簽頁切換效果
第二個實例是關(guān)于標(biāo)簽頁切換的,先看一下效果:

這也是一個很常見的交互效果,以往正常的javascript寫法是給各個按鈕綁定事件來切換不同的層,當(dāng)然也可以用純css寫,給上面的三個切換的層分別添加一個單選按鈕的兄弟節(jié)點,再用絕對定位把單選按鈕定位在三個button上面,這樣就可以用:checked偽類來單選按鈕的兄弟元素,即對應(yīng)的不同的層,我簡單的寫了一下DOM結(jié)構(gòu),大概就是這樣:

那么用vue.js實現(xiàn)上述的效果,其實也有兩種途徑,一種使用vue-router,vue-router是vue.js的一個路由組件,在單頁面應(yīng)用中非常非常流行,如果切換的層數(shù)據(jù)量非常大的話,比如每個層都要有服務(wù)器進(jìn)行大量的數(shù)據(jù)交互,那么強烈建議使用vue-router,因為vue-router在每次切換路由的過程中,都會自動銷毀(destroyed)前面的組件,這樣在頻繁的操作中頁面也不會卡,而且vue-router也定義了頁面切換過程中的過渡動畫。
如果數(shù)據(jù)量并不復(fù)雜的話,可以直接通過vue.js定義切換狀態(tài)來切換不同的層。
首先先把template和css寫好:

其中introduce、chatbar、videobar分別代表三個需要跟隨button切換的組件,接下來就可以給vue.js的button節(jié)點綁定事件來操控點擊狀態(tài):


點擊不同的button,會讓active的狀態(tài)改變,同時這個狀態(tài)會作用到button上面,比如讓被點擊的button有個高亮的效果等等。
那么如何讓active的狀態(tài)作用到彈出層呢?其實定義一個computed函數(shù)就可以了:


總結(jié)
以上所述是小編給大家介紹的vue.js實現(xiàn)標(biāo)簽頁切換效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
vue input標(biāo)簽通用指令校驗的實現(xiàn)
這篇文章主要介紹了vue input標(biāo)簽通用指令校驗的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
vue中axios利用blob實現(xiàn)文件瀏覽器下載方式
這篇文章主要介紹了vue中axios利用blob實現(xiàn)文件瀏覽器下載方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
nuxt 自定義 auth 中間件實現(xiàn)令牌的持久化操作
這篇文章主要介紹了nuxt 自定義 auth 中間件實現(xiàn)令牌的持久化操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
vue項目部署到nginx/tomcat服務(wù)器的實現(xiàn)
這篇文章主要介紹了vue項目部署到nginx/tomcat服務(wù)器的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
vue如何實現(xiàn)Json格式數(shù)據(jù)展示
這篇文章主要介紹了vue如何實現(xiàn)Json格式數(shù)據(jù)展示,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-04-04

