最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue分別運(yùn)用class綁定和style綁定通過(guò)點(diǎn)擊實(shí)現(xiàn)樣式切換

 更新時(shí)間:2023年07月13日 10:17:49   作者:夏茗星  
這篇文章主要為大家介紹了Vue分別運(yùn)用class綁定和style綁定通過(guò)點(diǎn)擊實(shí)現(xiàn)樣式切換,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Vue官方文檔

https://cn.vuejs.org/v2/guide...

<div v-bind:class="[activeClass, errorClass]"></div>
可以簡(jiǎn)寫(xiě)成
<div :class="[activeClass, errorClass]"></div>

class綁定

<!--
 * @Author: [you name]
 * @Date: 2021-10-08 15:15:52
 * @LastEditors: [you name]
 * @LastEditTime: 2021-10-08 22:46:18
 * @Description: 
-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.13/vue.js"></script>
    <style>
        /* 點(diǎn)擊前的樣式 */
        .class1 {
            background-color: #fff;
            color: #333;
        }
        /* 點(diǎn)擊之后的樣式 */
        .class2 {
            background-color: #f52819;
            color: #fff;
        }
        /* 給按鈕設(shè)置樣式 */
        button {
            width: 80px;
            height: 40px;
            border-radius: 5px;
            border: 2px solid rgb(179, 167, 167);
            background-color: #fff;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- 分別給按鈕設(shè)置點(diǎn)擊事件 -->
        <button @click='handler1' :class="[isYes1? 'class1' : 'class2']">按鈕1</button>
        <button @click='handler2' :class="[isYes2? 'class1' : 'class2']">按鈕2</button>
        <button @click='handler3' :class="[isYes3? 'class1' : 'class2']">按鈕3</button>
    </div>
    <script>
        // 第二種方法
        let vm = new Vue({
            el:'#app',
            data:{
                isYes1:true,
                isYes2:true,
                isYes3:true,
            },
            methods:{
                handler1(){
                    this.isYes1 = false,
                    this.isYes2 = true,
                    this.isYes3 = true,
                    console.log('第一個(gè)點(diǎn)擊事件');
                },
                handler2(){
                    this.isYes2 = false,
                    this.isYes1 = true,
                    this.isYes3 = true,
                    console.log('第二個(gè)點(diǎn)擊事件');
                },
                handler3(){
                    this.isYes3 = false,
                    this.isYes2 = true,
                    this.isYes1 = true,
                    console.log('第三個(gè)點(diǎn)擊事件');
                },
            }
        })
    </script>
</body>
</html>

style綁定

<!--
 * @Author: [you name]
 * @Date: 2021-10-08 15:15:52
 * @LastEditors: [you name]
 * @LastEditTime: 2021-10-08 22:54:40
 * @Description: 
-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.13/vue.js"></script>
    <style>
        /* 給按鈕設(shè)置樣式 */
        button {
            width: 80px;
            height: 40px;
            border-radius: 5px;
            border: 2px solid rgb(179, 167, 167);
            background-color: #fff;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- style綁定,這里是表達(dá)式結(jié)果類型為字符串,為展示點(diǎn)擊按鈕改變樣式,使用的是三目運(yùn)算,
            在第一步中設(shè)置了一個(gè)可用于判斷的數(shù)據(jù),如果該數(shù)據(jù)值和按鈕內(nèi)容一樣的話,則會(huì)觸發(fā)點(diǎn)擊事件,
            該style樣式設(shè)置為要改變的樣式,即data中設(shè)置的styCss樣式 -->
        <button :style='isActive =="按鈕1" ? styCss : ""' @click='changeHandler'>按鈕1</button>
        <button :style='isActive =="按鈕2" ? styCss : ""' @click='changeHandler'>按鈕2</button>
        <button :style='isActive =="按鈕3" ? styCss : ""' @click='changeHandler'>按鈕3</button>
    </div>
    <script>
        let vm = new Vue({
            el: '#app',
            data: {
                // 設(shè)置一個(gè)數(shù)據(jù)來(lái)進(jìn)行判斷,其初始值設(shè)為空字符串,就會(huì)顯示原始樣式
                isActive: '',
                // 在數(shù)據(jù)模型中設(shè)置經(jīng)點(diǎn)擊后要變換的樣式,這里聲明一個(gè)對(duì)象,用在按鈕的綁定上,點(diǎn)擊后切換的樣式
                styCss: {
                    background: 'red',
                    color: 'white'
                }
            },
            methods: {
                // 為點(diǎn)擊事件實(shí)現(xiàn)三按鈕之間的互斥效果,即點(diǎn)擊一個(gè)按鈕,該按鈕的樣式改變,
                //其他的不變,點(diǎn)擊另一個(gè)時(shí),前一個(gè)按鈕的樣式還原,當(dāng)前按鈕樣式改變,
                //那么就需要在點(diǎn)擊方法中添加將目標(biāo)源元素的文本值賦予需要進(jìn)行判斷的數(shù)據(jù)時(shí),
                //當(dāng)點(diǎn)擊的按鈕的內(nèi)容和判斷的條件一樣時(shí),成功觸發(fā)該點(diǎn)擊事件,實(shí)現(xiàn)切換并且改變樣式的效果。
                changeHandler(event) {
                    this.isActive = event.target.innerText
                }
            }
        })
    </script>
</body>
</html>

以上就是Vue--分別運(yùn)用class綁定和style綁定,通過(guò)點(diǎn)擊實(shí)現(xiàn)樣式的切換的詳細(xì)內(nèi)容,更多關(guān)于Vue-運(yùn)用class style綁定點(diǎn)擊樣式切換的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Vue3實(shí)現(xiàn)圖片放大鏡效果

    Vue3實(shí)現(xiàn)圖片放大鏡效果

    這篇文章主要為大家詳細(xì)介紹了Vue3實(shí)現(xiàn)圖片放大鏡效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Vue3實(shí)現(xiàn)高性能虛擬列表的兩種方法

    Vue3實(shí)現(xiàn)高性能虛擬列表的兩種方法

    在前端開(kāi)發(fā)中,大數(shù)據(jù)量列表渲染 一直是性能挑戰(zhàn),假設(shè)我們有一個(gè) API 返回 1 萬(wàn)條數(shù)據(jù),如果直接渲染到頁(yè)面,必然會(huì)導(dǎo)致嚴(yán)重卡頓甚至瀏覽器崩潰,解決方案就是虛擬列表,所以本文給大家介紹了本文兩種實(shí)現(xiàn),并給出適用場(chǎng)景,需要的朋友可以參考下
    2025-08-08
  • Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn)3

    Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn)3

    這篇文章主要為大家詳細(xì)介紹了Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn),教大家如何在某個(gè)對(duì)象中,新增某個(gè)屬性,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • vue打包后,用后端接口報(bào)錯(cuò)304、404問(wèn)題

    vue打包后,用后端接口報(bào)錯(cuò)304、404問(wèn)題

    這篇文章主要介紹了vue打包后,用后端接口報(bào)錯(cuò)304、404問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • js節(jié)流防抖應(yīng)用場(chǎng)景,以及在vue中節(jié)流防抖的具體實(shí)現(xiàn)操作

    js節(jié)流防抖應(yīng)用場(chǎng)景,以及在vue中節(jié)流防抖的具體實(shí)現(xiàn)操作

    這篇文章主要介紹了js節(jié)流防抖應(yīng)用場(chǎng)景,以及在vue中節(jié)流防抖的具體實(shí)現(xiàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • vue-router中hash模式與history模式的區(qū)別

    vue-router中hash模式與history模式的區(qū)別

    為了構(gòu)建 SPA(單頁(yè)面應(yīng)用),需要引入前端路由系統(tǒng),這就是 Vue-Router 存在的意義,而這篇文章主要給大家介紹了關(guān)于vue-router中兩種模式區(qū)別的相關(guān)資料,分別是hash模式、history模式,需要的朋友可以參考下
    2021-06-06
  • vue如何集成raphael.js中國(guó)地圖的方法示例

    vue如何集成raphael.js中國(guó)地圖的方法示例

    最近的數(shù)據(jù)統(tǒng)計(jì)項(xiàng)目中要用到中國(guó)地圖,也就是在地圖上動(dòng)態(tài)的顯示某個(gè)時(shí)間段某個(gè)省份地區(qū)的統(tǒng)計(jì)數(shù)據(jù),我們不需要flash,僅僅依靠raphael.js以及SVG圖像就可以完成地圖的交互操作。本文就給大家介紹了關(guān)于利用vue集成raphael.js中國(guó)地圖的相關(guān)資料,需要的朋友可以參考下。
    2017-08-08
  • antd vue 如何調(diào)整checkbox默認(rèn)樣式

    antd vue 如何調(diào)整checkbox默認(rèn)樣式

    這篇文章主要介紹了antd vue 如何調(diào)整checkbox默認(rèn)樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue中使用Swiper簡(jiǎn)單封裝組件示例

    Vue中使用Swiper簡(jiǎn)單封裝組件示例

    這篇文章主要為大家介紹了Vue中使用Swiper簡(jiǎn)單封裝組件示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • vue+element?分頁(yè)封裝的實(shí)現(xiàn)示例

    vue+element?分頁(yè)封裝的實(shí)現(xiàn)示例

    本文主要介紹了vue+element?分頁(yè)封裝的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07

最新評(píng)論

象州县| 茶陵县| 湄潭县| 伊吾县| 乐安县| 应城市| 武隆县| 祥云县| 乌拉特后旗| 通辽市| 兴安盟| 平定县| 客服| 昌黎县| 南投县| 齐河县| 乐山市| 甘孜县| 黑水县| 通许县| 临澧县| 桦川县| 武山县| 南涧| 荃湾区| 罗平县| 宜城市| 利津县| 肃宁县| 赤城县| 古蔺县| 西青区| 宿州市| 凯里市| 新和县| 余姚市| 邵阳市| 哈巴河县| 隆尧县| 舟山市| 乐至县|