forked from integrated_whb/integrated_whb_vue
人员报警增加动画
parent
0f14838296
commit
0167dfcd75
|
@ -22,7 +22,7 @@
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in data.block2OptionsList"
|
v-for="(item, index) in data.block2OptionsList"
|
||||||
:key="index"
|
:key="index"
|
||||||
class="list"
|
:class="['list', { alarm: item.total > 0 }]"
|
||||||
@click="fnAlarmTypeClick(item)"
|
@click="fnAlarmTypeClick(item)"
|
||||||
>
|
>
|
||||||
<div class="name">{{ item.label }}</div>
|
<div class="name">{{ item.label }}</div>
|
||||||
|
@ -55,6 +55,17 @@
|
||||||
v-model:pd="data.form"
|
v-model:pd="data.form"
|
||||||
:ele-type-num="+data.eleType"
|
:ele-type-num="+data.eleType"
|
||||||
/>
|
/>
|
||||||
|
<template v-if="data.block2OptionsList.some((item) => item.total > 0)">
|
||||||
|
<teleport to="body">
|
||||||
|
<div class="alarm_full_screen">
|
||||||
|
<div
|
||||||
|
v-for="item in 4"
|
||||||
|
:key="item"
|
||||||
|
:class="['alarm_full_screen_item', 'alarm_full_screen_item' + item]"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</teleport>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
@ -67,6 +78,7 @@ import {
|
||||||
getAlarmTypeCount,
|
getAlarmTypeCount,
|
||||||
getPersonnelPositioningCount,
|
getPersonnelPositioningCount,
|
||||||
} from "@/request/bi/mapApi.js";
|
} from "@/request/bi/mapApi.js";
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
block1OptionsList: [
|
block1OptionsList: [
|
||||||
{
|
{
|
||||||
|
@ -254,6 +266,24 @@ getPositionData();
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
|
&.alarm {
|
||||||
|
background: rgba(139, 65, 65, 0.5);
|
||||||
|
border: 1px solid red;
|
||||||
|
animation: scale 2s infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes scale {
|
||||||
|
0% {
|
||||||
|
transform: scale(0.95);
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
transform: scale(1.05);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: scale(0.95);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -305,26 +335,32 @@ getPositionData();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.table {
|
.table {
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
|
|
||||||
.tr {
|
.tr {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
&:nth-child(odd) {
|
&:nth-child(odd) {
|
||||||
background-color: rgba(42, 86, 158, 0.53);
|
background-color: rgba(42, 86, 158, 0.53);
|
||||||
}
|
}
|
||||||
|
|
||||||
.td {
|
.td {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 6px 10px;
|
padding: 6px 10px;
|
||||||
|
|
||||||
&:nth-child(1) {
|
&:nth-child(1) {
|
||||||
flex-basis: 30%;
|
flex-basis: 30%;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:nth-child(2) {
|
&:nth-child(2) {
|
||||||
flex-basis: 50%;
|
flex-basis: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:nth-child(3) {
|
&:nth-child(3) {
|
||||||
flex-basis: 20%;
|
flex-basis: 20%;
|
||||||
}
|
}
|
||||||
|
@ -354,4 +390,56 @@ getPositionData();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.alarm_full_screen {
|
||||||
|
.alarm_full_screen_item {
|
||||||
|
position: absolute;
|
||||||
|
box-shadow: 0 0 20px 10px red;
|
||||||
|
animation: opacity 2s infinite;
|
||||||
|
|
||||||
|
&1 {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&2 {
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
&3 {
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&4 {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes opacity {
|
||||||
|
0% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
Loading…
Reference in New Issue