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