vue實(shí)現(xiàn)樣式之間的切換及vue動(dòng)態(tài)樣式的實(shí)現(xiàn)方法
前言
既然我們選擇了vue,那么在做東西時(shí)就不要想著去操作dom,所有的都交給vue來(lái)解決。
下面來(lái)說(shuō)一個(gè)很簡(jiǎn)單但是很常用的效果,可能人人都會(huì)用到這樣的需求
請(qǐng)看下圖
導(dǎo)航欄的樣式切換功能,如果我們使用jquery之類(lèi)的東西來(lái)寫(xiě),可能要寫(xiě)好多代碼,那么我們用vue呢,
代碼如下
html
附上vue中style與class綁定API
<div id="wrap" class="box"> <div v-for="(list,index) in navLists" class="nav" :class="{ red:changeRed == index}" @click="reds(index)">{{list.text}}</div> </div>
css
*{ padding: 0;margin: 0; } .box{ height: 40px; background: cyan; } .nav{ line-height: 40px; display: inline-block; margin-left: 100px; cursor: pointer; } .red{ color: red; } //前提是必須引入vuejs哦! var vm = new Vue({ el:"#wrap", data:{ navLists:[ { "text":"首頁(yè)" }, { "text":"組件" }, { "text":"API" }, { "text":"我們" } ], changeRed:0 }, methods:{ reds:function(index){ this.changeRed = index; } } });
仔細(xì)看看我們的js代碼除了模擬的數(shù)據(jù)其實(shí)就只有一個(gè)簡(jiǎn)單的邏輯處理,比起之前的各種操作dom省了好多事。
ps:vue 動(dòng)態(tài)樣式的解決方法
:class="{active: isActive}"
這個(gè)就沒(méi)什么好說(shuō)的了,但是在類(lèi)名有'-'號(hào)的時(shí)候回報(bào)錯(cuò),
還有一種
class="[lineStyle(courseClick)]" lineStyle(isClick){ if (isClick===true){ return 'tab-items-current' }else { return 'class-tab-items' } }
總結(jié)
以上所述是小編給大家介紹的vue實(shí)現(xiàn)樣式之間的切換及vue動(dòng)態(tài)樣式的實(shí)現(xiàn)方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Vue element-ui父組件控制子組件的表單校驗(yàn)操作
這篇文章主要介紹了Vue element-ui父組件控制子組件的表單校驗(yàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07vscode搭建vue環(huán)境完整圖文教程(適合新手小白)
Vue框架的優(yōu)秀設(shè)計(jì)和強(qiáng)大的生態(tài)系統(tǒng)成為了越來(lái)越多開(kāi)發(fā)者選擇Vue的原因,在實(shí)際項(xiàng)目過(guò)程中一個(gè)高效的開(kāi)發(fā)環(huán)境能夠大大提高開(kāi)發(fā)效率,這篇文章主要給大家介紹了關(guān)于vscode搭建vue環(huán)境的相關(guān)資料,需要的朋友可以參考下2023-10-10vue攔截器實(shí)現(xiàn)統(tǒng)一token,并兼容IE9驗(yàn)證功能
這篇文章主要介紹了vue攔截器實(shí)現(xiàn)統(tǒng)一token,并兼容IE9驗(yàn)證功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2018-04-04基于vue實(shí)現(xiàn)探探滑動(dòng)組件功能
這篇文章主要介紹了基于vue實(shí)現(xiàn)探探滑動(dòng)組件功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05vue3+vite項(xiàng)目中顯示SVG圖片的實(shí)現(xiàn)
vite-plugin-svg-icons是一個(gè)Vite插件,其作用是將SVG圖標(biāo)文件轉(zhuǎn)換為Vue組件,本文主要介紹了vue3+vite項(xiàng)目中顯示SVG圖片的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02vue 監(jiān)聽(tīng)input輸入事件(oninput)的示例代碼支持模糊查詢(xún)
這篇文章主要介紹了vue 監(jiān)聽(tīng)input輸入事件(oninput)支持模糊查詢(xún),比如說(shuō)表格模糊查詢(xún),實(shí)現(xiàn)一邊輸入,一邊過(guò)濾數(shù)據(jù),本文通過(guò)示例代碼給大家詳細(xì)講解,需要的朋友可以參考下2023-02-02如何在 Vite 項(xiàng)目中自動(dòng)為每個(gè) Vue 文件導(dǎo)入 base.les
在Vite配置中通過(guò)添加css.preprocessorOptions實(shí)現(xiàn)自動(dòng)導(dǎo)入base.less,簡(jiǎn)化Vue組件的樣式設(shè)置,提高代碼的可維護(hù)性,感興趣的朋友跟隨小編一起看看吧2024-09-09基于Vue 擼一個(gè)指令實(shí)現(xiàn)拖拽功能
這篇文章主要介紹了Vue 指令實(shí)現(xiàn)拖拽功能,實(shí)現(xiàn)原理很簡(jiǎn)單,文中通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10