Vue實(shí)現(xiàn)背景更換顏色操作
如下所示:
<!-- 分頁上下頁改變背景圖效果 --> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title></title> <link rel="stylesheet" href=""> <script type="text/javascript" src="../node_modules/vue/dist/vue.js"></script> <style type="text/css" media="screen"> .page{ list-style: none; } .page>li{ float: left; margin-left: 10px; } .page>li>a{ text-decoration: none; } .active{ color: red; text-decoration: display; } div{ width: 500px;height: 500px; } </style> </head> <body > <div id="app" v-bind:style="{backgroundColor:bgCol}"> <ul class="page"> <li> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" v-on:click="decrease" >上一頁</a> </li> <li v-for="n in totalPage"> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" v-bind:class="n==activeNum?'active':''">{{n}}</a> </li> <li> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click="increase">下一頁</a> </li> </ul> </div> <script type="text/javascript"> var exampleData={ //msg:"Hello Vue", bgCol:"#DB8623FF", totalPage:10, activeNum:3, } var app = new Vue({ el:'#app', data:exampleData, methods:{ decrease:function(){ this.activeNum==1?'':this.activeNum-=1; this.bgCol=this.getRandom(); }, increase:function(){ this.activeNum==10?'':this.activeNum+=1; this.bgCol=this.getRandom(); }, getRandom:function(){ var r=Math.floor(Math.random()*256); var g=Math.floor(Math.random()*256); var b=Math.floor(Math.random()*256); var a=Math.random().toFixed(1); return `rgba(${r},${g},$,${a})` } } }) </script> </body> </html>
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>自定義指令實(shí)現(xiàn)隨機(jī)背景</title> <style type="text/css" media="screen"> #app{ width: 999px; height: 999px; } </style> </head> <body> <h3>自定義指令</h3> <div id="app" v-change-background-color="myBgColor"> <h3 > <input type="text" v-model="myBgColor" placeholder="請(qǐng)輸入16進(jìn)制顏色"> </h3> </div> <script src="../node_modules//vue/dist/vue.js"></script> <script> var exampleData = { myBgColor: "#5FCA34", }; new Vue({ el: "#app", data: exampleData, methods:{ getRandom:function(){ var r=Math.floor(Math.random()*256); var g=Math.floor(Math.random()*256); var b=Math.floor(Math.random()*256); var a=Math.random().toFixed(1); return `rgba(${r},${g},$,$)` } }, directives: { changeBackgroundColor: { bind: function(el, bindings) { //el:指定綁定dom元素 h3dom對(duì)象 //bindings:自定義指令對(duì)象 //v-change-background-color="myBgColor" //bindings.value;=="#ff0000" var r=Math.floor(Math.random()*256); var g=Math.floor(Math.random()*256); var b=Math.floor(Math.random()*256); var a=Math.random().toFixed(1); el.style.backgroundColor =`rgba(${r},${g},$,${a})`; console.log("綁定成功"); }, update: function(el, bindings) { console.log('已更新數(shù)據(jù)'); var r=Math.floor(Math.random()*256); var g=Math.floor(Math.random()*256); var b=Math.floor(Math.random()*256); var a=Math.random().toFixed(1); el.style.background = `rgba(${r},${g},$,${a})` }, //更新數(shù)據(jù) } } }); </script> </body> </html>
補(bǔ)充知識(shí):vue統(tǒng)一設(shè)置了背景色,單獨(dú)改變某一頁的背景色
有時(shí)我們會(huì)遇到單獨(dú)改變某個(gè)組件的背景填充色,而我們已經(jīng)在index.html中引入了公用的css樣式(body中設(shè)置了背景色),由于單個(gè)組件沒有body標(biāo)簽,于是要修改單個(gè)組件的背景色只需添加如下代碼即可。
beforeCreate () { document.querySelector('body').setAttribute('style', 'margin: 0 auto; width: 100%; max-width: 750px;min-width: 300px; background:#171b2a; overflow-x: hidden;height: 100%;'); }
以上這篇Vue實(shí)現(xiàn)背景更換顏色操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vscode中eslint配置保存自動(dòng)修復(fù)代碼示例詳解
vscode根據(jù)eslint保存?動(dòng)修復(fù)配置,下面這篇文章主要給大家介紹了關(guān)于vscode中eslint配置保存自動(dòng)修復(fù)代碼的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12Vuex實(shí)現(xiàn)數(shù)據(jù)增加和刪除功能
今天小編就為大家分享一篇Vuex實(shí)現(xiàn)數(shù)據(jù)增加和刪除功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11解讀element-ui使用el-upload,before-upload函數(shù)不好使的問題
這篇文章主要介紹了解讀element-ui使用el-upload,before-upload函數(shù)不好使的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03vue2 v-model/v-text 中使用過濾器的方法示例
這篇文章主要介紹了vue2 v-model/v-text 中使用過濾器的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05