您的位置:首页技术文章
文章详情页

Vue实现背景更换颜色操作

【字号: 日期:2023-01-06 08:32:52浏览:4作者:猪猪

如下所示:

Vue实现背景更换颜色操作

<!-- 分页上下页改变背景图效果 --><!DOCTYPE html><html><head><meta charset='utf-8'><meta http-equiv='X-UA-Compatible' content='IE=edge'><title></title><link rel='stylesheet' href='https://www.haobala.com/bcjs/11328.html'><script type='text/javascript' src='https://www.haobala.com/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 v-bind:style='{backgroundColor:bgCol}'><ul class='page'><li> <a href='https://www.haobala.com/bcjs/11328.html#' rel='external nofollow' rel='external nofollow' rel='external nofollow' v-on:click='decrease' >上一页</a> </li><li v-for='n in totalPage'><a href='https://www.haobala.com/bcjs/11328.html#' rel='external nofollow' rel='external nofollow' rel='external nofollow' v-bind:class='n==activeNum?’active’:’’'>{{n}}</a></li><li><a href='https://www.haobala.com/bcjs/11328.html#' 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},${b},${a})`}}})</script></body></html>

Vue实现背景更换颜色操作

<!DOCTYPE html><html><head lang='en'> <meta charset='UTF-8'> <title>自定义指令实现随机背景</title> <style type='text/css' media='screen'> #app{ width: 999px; height: 999px; } </style></head><body> <h3>自定义指令</h3> <div v-change-background-color='myBgColor'> <h3 > <input type='text' v-model='myBgColor' placeholder='请输入16进制颜色'> </h3> </div> <script src='https://www.haobala.com/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},${b},${b})` } }, directives: { changeBackgroundColor: { bind: function(el, bindings) { //el:指定绑定dom元素 h3dom对象 //bindings:自定义指令对象 //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},${b},${a})`; console.log('绑定成功'); }, update: function(el, bindings) { console.log(’已更新数据’); 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},${b},${a})` }, //更新数据 } } }); </script></body></html>

补充知识:vue统一设置了背景色,单独改变某一页的背景色

有时我们会遇到单独改变某个组件的背景填充色,而我们已经在index.html中引入了公用的css样式(body中设置了背景色),由于单个组件没有body标签,于是要修改单个组件的背景色只需添加如下代码即可。

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实现背景更换颜色操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持好吧啦网。

标签: Vue
相关文章: