From dddcf8840e52a212e7b49ec034aec7763b5917f5 Mon Sep 17 00:00:00 2001 From: chenzeping <ChenZeping02609@163.com> Date: 星期四, 01 四月 2021 10:56:35 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/panel/LegendPanel.vue | 274 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 260 insertions(+), 14 deletions(-) diff --git a/src/components/panel/LegendPanel.vue b/src/components/panel/LegendPanel.vue index 17431e4..383aea2 100644 --- a/src/components/panel/LegendPanel.vue +++ b/src/components/panel/LegendPanel.vue @@ -1,23 +1,151 @@ <template> -<div class="legend-panel"> - - <div class="legend-icon unactive"> - - <i class="el-icon-more-outline"></i> - <span >鍥句緥</span> + <div class="legend-panel"> + <transition name="fade"> + <div :class="'legend-content map-background'" v-show="legendControl"> + <div class="legend-content-box" v-for="(item,index) in legendContents" :key="index"> + <p><span>{{ item.title }}</span></p> + <div :class="index === 5 ? '':'map-under-line'"></div> + <ul> + <li v-for="(ite,inde) in item.items" :key="inde"> + <img :src='ite.legendImage' alt=''> + <span>{{ ite.legendContent }}</span> + </li> + </ul> + </div> + </div> + </transition> + <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="鍥句緥" placement="left"> + <div :class="this.legendControl?'legend-btn map-btn-active':'legend-btn map-btn-unactive'" + @click="legendChange()"> + <i class="el-icon-more-outline"></i> + </div> + </el-tooltip> </div> -</div> </template> - <script> export default { - name: 'LegendPanel' + name: 'LegendPanel', + data () { + return { + // 鎺у埗鍥句緥 鍐呭鐨� 鏄剧ず/闅愯棌 + legendControl: false, + // 鍥鹃噷瀛樺偍鏁版嵁 + legendContents: [ + { + title: '浼佷笟', + items: [ + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '涓浗鐭冲寲' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '娌圭敯浼佷笟 ' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鐐煎寲浼佷笟' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '閿�鍞紒涓�' + } + ] + }, + { + title: '姘存儏', + items: [ + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '姘存枃绔�' + } + ] + }, + { + title: '绠$嚎', + items: [ + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '澶╃劧姘旂绾�' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '澶╃劧姘斿満绔�' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鎴愬搧娌圭绾�' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鎴愬搧娌瑰満绔�' + } + ] + }, + { + title: '鍙伴', + items: [ + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鍙伴瀹炴祴涓績' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鍙伴瀹炴祴璺緞' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鍙伴棰勬祴涓績' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鍙伴棰勬祴璺緞' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鍙伴褰撳墠涓績' + } + ] + }, + { + title: '闄嶆按绛夌骇(鍗曚綅锛歮m)', + items: [ + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '灏忛洦0-5' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '涓洦5-10' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '澶ч洦10-20' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '鏆撮洦20-50' + }, + { + legendImage: '../.././assets/images/map-pages/setting.png', + legendContent: '澶ф毚闆�50-100' + } + ] + } + ] + } + }, + methods: { + // 鍥炬爣 鎺у埗鍐呭鐨勫睍绀轰笌闅愯棌 + legendChange () { + this.legendControl = !this.legendControl + } + } } </script> -<style lang="less" scoped> - -.legend-panel{ +<style lang="less"> +.legend-panel { position: absolute; z-index: 502; bottom: .11979rem; @@ -27,7 +155,125 @@ flex-direction: column; -webkit-box-align: end; -ms-flex-align: end; - align-items: flex-end; -} + //align-items: flex-end; + transition: all .5s; + .legend-btn { + width: .2rem; + height: .2rem; + //font-size: .08333rem; + border: .00521rem solid @background-color-light; + border-radius: @border-radius; + text-align: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + background: @background-color; + margin-top: .04167rem; + cursor: pointer; + //color: @color; + margin-left: auto; + font-size: 0.08333rem; + } + + @keyframes bounce-in { + 0% { + transform: scale(0); + opacity: 0.3; + } + 100% { + transform: scale(1); + opacity: 1; + } + } + + .fade-enter-active { + transform-origin: right bottom; + animation: bounce-in .2s; + } + + .fade-leave-active { + transform-origin: right bottom; + animation: bounce-in .2s reverse; + } + + .legend-content { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; + + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + + overflow: hidden; + min-height: 1.28646rem; + + .legend-content-box { + font-size: 0.07292rem; + padding: .10417rem; + border-left: .00521rem solid @background-color-split; + + p { + text-align: center; + margin: 0 !important; + //padding: 0; + //color: @color-title; + -webkit-margin-before: 0.3rem; + margin-block-start: 0.3rem; + -webkit-margin-after: 0.2rem; + margin-block-end: 0.2rem; + margin-bottom: 0.05208rem !important; + + span { + color: @color-title; + font-size: .08333rem; + font-weight: 600; + } + } + + ul { + list-style: none; + flex-wrap: wrap; + margin: 0 !important; + padding: 0 !important;; + padding-inline: 0; + font-size: .08333rem; + + li { + list-style: none; + display: flex; + -webkit-box-align: center; + align-items: center; + margin: 0.05208rem 0; + + img { + width: .08333rem; + height: .08333rem; + margin-right: .01042rem; + } + + span { + color: @color; + } + } + } + } + + } +} </style> -- Gitblit v1.8.0