利用vue.js實(shí)現(xiàn)被選中狀態(tài)的改變方法
在使用原型實(shí)現(xiàn)使不選中狀態(tài)改變之后,接觸到vue,就想著能不能使用vue再把功能實(shí)現(xiàn)一邊,在上篇中的頁面并沒有動態(tài)實(shí)現(xiàn)頁面,所有的數(shù)據(jù)也都是直接寫在html中。而使用vue之后,已經(jīng)能夠?qū)崿F(xiàn)頁面根據(jù)數(shù)據(jù)的多少動態(tài)生成。而且代碼量也大幅度減少。
html部分的代碼:
<div data-role="page " class="page ">
<div class="center " id="app">
<div class="group ">
<ul>
<li v-for = "todo in todos ">
<div class="groupheader ">
<div class="Gheadertext ">{{todo.groupheader}}</div>
</div>
<div class = "groupbody ">
<ul class="list ">
<li v-for="cell in todo.groupbody" v-on:click="exchange($event)" class="groupcell">
<div class="celltext">
{{ cell.text }}
</div>
<img class="selectimg" src="img/select.png ">
</li>
</ul>
</div>
</li>
</ul>
</div>
</div>
</div>
數(shù)據(jù)代碼:
var datas = {
todos :[
{
groupheader : 'MB3101',
groupbody:[
{ text: '調(diào)整不當(dāng)'},
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
]
},
{
groupheader : 'MB3102',
groupbody:[
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
]
},
{
groupheader : 'MB3103',
groupbody:[
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
{ text: '調(diào)整不當(dāng)' },
{ text: '光電開關(guān)損壞' },
{ text: '鏡面積灰' },
]
}
]
}
js部分的代碼:
new Vue({
el: '#app',
data:datas,
methods:{
exchange:function(event){
//獲取被點(diǎn)擊的元素對象
var a = event.target;
//獲取被點(diǎn)擊元素中的子元素<img>
var cellimg = a.getElementsByTagName("img")[0];
if(a.className == "groupcell") {
a.className = "selectcell";
cellimg.style.display = "block";
}
else if(a.className == "selectcell") {
a.className = "groupcell";
cellimg.style.display = "none";
}
}
}
})
效果如圖所示:

以上這篇利用vue.js實(shí)現(xiàn)被選中狀態(tài)的改變方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺談vue2 單頁面如何設(shè)置網(wǎng)頁title
這篇文章主要介紹了淺談vue2 單頁面如何設(shè)置網(wǎng)頁title,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11
vue3 中使用vue?img?cutter?圖片裁剪插件的方法
這篇文章主要介紹了vue3 中使用vue?img?cutter?圖片裁剪插件的方法,首先安裝依賴,構(gòu)建 components/ImgCutter.vue 組件,需要的朋友可以參考下2024-05-05
羊了個(gè)羊通關(guān)腳本Vue?node實(shí)現(xiàn)版本
這篇文章主要為大家介紹了羊了個(gè)羊通關(guān)腳本Vue?node實(shí)現(xiàn)版本,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
如何利用Vue3管理系統(tǒng)實(shí)現(xiàn)動態(tài)路由和動態(tài)側(cè)邊菜單欄
通常我們在vue項(xiàng)目中都是前端配置好路由的,但在一些項(xiàng)目中我們可能會遇到權(quán)限控制,這樣我們就涉及到動態(tài)路由的設(shè)置了,下面這篇文章主要給大家介紹了關(guān)于如何利用Vue3管理系統(tǒng)實(shí)現(xiàn)動態(tài)路由和動態(tài)側(cè)邊菜單欄的相關(guān)資料,需要的朋友可以參考下2022-02-02
關(guān)于Vue的?Vuex的4個(gè)輔助函數(shù)
這篇文章主要介紹了關(guān)于Vue的?Vuex的4個(gè)輔助函數(shù),輔助函數(shù)的好處就是幫助我們簡化了獲取store中state、getter、mutation和action,下面我們一起來看看文章具體的舉例說明吧,需要的小伙伴也可以參考一下2021-12-12

