vue之神奇的動態按鈕

来源:https://www.cnblogs.com/gengbinjia/archive/2019/05/14/10863931.html
-Advertisement-
Play Games

今天我們將利用vue的條件指令來完成一個簡易的動態變色功能按鈕 首先我們還是要對vue進行配置,在上篇隨筆中有相關下載教學. 然後我們要在html頁面上搭建三個簡易的按鈕,顏色分別為紫,綠和藍(顏色隨意)其代碼如下: 這裡的@是v-on事件指令,在這裡要在三個按鈕上設置點擊事件 接著我們要進行條件指 ...


今天我們將利用vue的條件指令來完成一個簡易的動態變色功能按鈕

 

首先我們還是要對vue進行配置,在上篇隨筆中有相關下載教學.

然後我們要在html頁面上搭建三個簡易的按鈕,顏色分別為紫,綠和藍(顏色隨意)其代碼如下:

<body>
<div id="app">
    <p>
        <button @click="btn_click('pg1')"  :style="{background:'rebeccapurple'}"></button>
        <button @click="btn_click('pg2')" :style="{background:'yellowgreen'}"></button>
        <button @click="btn_click('pg3')" :style="{background:'cornflowerblue'}"></button>
    </p>
</div>
</body>

這裡的@是v-on事件指令,在這裡要在三個按鈕上設置點擊事件

接著我們要進行條件指令的判斷,其代碼如下:

        <div class="box pg1" v-if="pg == 'pg1'" key="pg1"></div>
        <div class="box pg2" v-else-if="pg == 'pg2'" key="pg2"></div>
        <div class="box pg3" v-else key="pg3"></div>

通過條件來判斷點擊不同的按鈕觸發不同的效果

接下來我們將進行掛載點,事件的渲染以及為事件提供實現體操作

<script>
    new Vue({
        el: '#app',
        data: {
            pg: 'pg1'
        },
        methods: {
            btn_click: function (pg_num) {
                this.pg = pg_num
            }
        }
    })
</script>

這裡我們設置進入頁面後預設顯示第一個按鈕顯示的圖片,通過點擊來完成事件的轉換.

最後就是把圖片給設置出來啦

    <style>
        .box {
            width: 200px;
            height: 100px;
            background-color: darkgray;
        }
        .pg1 { background-color: rebeccapurple; }
        .pg2 { background-color: yellowgreen; }
        .pg3 { background-color: cornflowerblue; }
    </style>

  當然也可以選擇你喜歡的圖片進行放置,這裡我們只是放置顏色填充的框

具體的實現效果如下:

  通過不同的點擊來獲得不同的圖片!

整體代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .box {
            width: 200px;
            height: 100px;
            background-color: darkgray;
        }
        .pg1 { background-color: rebeccapurple; }
        .pg2 { background-color: yellowgreen; }
        .pg3 { background-color: cornflowerblue; }
    </style>
</head>
<body>
<div id="app">
    <p v-if="is_if" key="my_if">v-if的顯示與隱藏</p>
    <p v-show="is_show" key="my_show">v-show的顯示與隱藏</p>
    <p>
        <button @click="btn_click('pg1')"  :style="{background:'rebeccapurple'}"></button>
        <button @click="btn_click('pg2')" :style="{background:'yellowgreen'}"></button>
        <button @click="btn_click('pg3')" :style="{background:'cornflowerblue'}"></button>
        <div class="box pg1" v-if="pg == 'pg1'" key="pg1"></div>
        <div class="box pg2" v-else-if="pg == 'pg2'" key="pg2"></div>
        <div class="box pg3" v-else key="pg3"></div>
    </p>
</div>

</body>
<script src="js/vue.min.js"></script>
<script>
    new Vue({
        el: '#app',
        data: {
            is_if: false,
            is_show: true,
            pg: 'pg1'
        },
        methods: {
            btn_click: function (pg_num) {
                this.pg = pg_num
            }
        }
    })
</script>
</html>
View Code

 

這樣神奇的動態Vue按鈕便完成啦

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • fork操作 fork操作是一個同步操作,若執行較慢會阻塞redis主線程 執行時間與記憶體量相關:記憶體越大,耗時越長;虛擬機較慢,真機較快。 查看fork執行時間,可做監控 info : latest_fork_usec 上一次執行fork的微秒數 優先使用物理機或者高效支持fork操作的虛擬化技術 ...
  • 1.認識JQ中ajax的封裝 jQ 對於ajax的封裝有兩層實現;$.ajax 為底層封裝實現;基於 $.ajax ,分別實現了$.get 與$.post 的高層封裝實現; 2.Ajax的底層實現基本語法: async: 布爾類型,代表是否非同步,true代表非同步,false同步,預設為true ca ...
  • js中substr和substring都是截取字元串中子串,非常相近,可以有一個或兩個參數。 語法:substr(start [,length]) 第一個字元的索引是0,start必選 length可選 substring(start [, end]) 第一個字元的索引是0,start必選 end可 ...
  • 符號生成器(Symbol Generator) 符號生成器(Symbol Generator)能夠生成三角形、十字架、菱形、圓形等符號,相關方法有: d3.svg.symbol() //創建一個符號生成器。 symbol(datum[,index]) //返回指定數據datum的路徑字元串 symb ...
  • video屬性介紹 iOS的屬性 playsinline On iPhone, video playsinline elements will now be allowed to play inline, and will not automatically enter fullscreen mod ...
  • 防抖和節流,主要是用來防止過於平凡的執行某個操作,如瀏覽器視窗變化執行某個操作,監聽某個input輸入框keyup變化,瀑布流佈局時Y軸滾動,圖片載入。 js函數的防抖 經過一段事件才執行某個操作,如果時間內又執行了該操作則延長時間重新開始計算 /* 輸入快的話會出現輸出結果多次重覆 */ 使用防抖 ...
  • 一、函數: 1、函數就是一個工具,通過一小段代碼,完成某個功能; 2、函數的定義: 或者 : 3、函數的調用(可以在函數定義後調用): 函數名(); 4、函數的參數: ①、形式參數: 形參出現在函數定義中,必須是變數。 ②、實際參數: 實參出現在函數調用中,可以是常量、變數、表達式,必須有值; (實 ...
  • 模擬器名稱 連接預設埠夜神安卓模擬器夜神安卓模擬器 62001逍遙安卓模擬器逍遙安卓模擬器 21503BlueStacks(藍疊安卓模擬器)BlueStacks(藍疊安卓模擬器) 5555雷電安卓模擬器雷電安卓模擬器 5555天天安卓模擬器天天安卓模擬器 5037網易MuMu(安卓模擬器)網易Mu ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...