123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614 |
- <template>
- <div class="app-container">
- <div class="aerial-container">
- <!-- 裂解区域1 -->
- <div class="cracking-box-1"
- id="cracking-box-1"
- @mouseover="handleCrackingMouseover"
- @mouseleave="handleCrackingMouseleave"
- @click="handleAreaClick('裂解区域', 'cracking1')">
- <!--<div class="cracking-box-text-1"-->
- <!--id="cracking-box-text-1">裂 解 区 域</div>-->
- </div>
- <!-- 裂解区域3 -->
- <div class="cracking-box-3"
- id="cracking-box-3"
- @mouseover="handleCrackingMouseover"
- @mouseleave="handleCrackingMouseleave"
- @click="handleAreaClick('裂解区域', 'cracking3')">
- </div>
- <!-- 裂解区域2 -->
- <div class="cracking-box-2"
- id="cracking-box-2"
- @mouseover="handleCrackingMouseover"
- @mouseleave="handleCrackingMouseleave"
- @click="handleAreaClick('裂解区域', 'cracking2')">
- <!--<div class="cracking-box-text-2"-->
- <!--id="cracking-box-text-2">裂 解 区 域</div>-->
- </div>
- <!-- 压缩区域1 -->
- <div class="compression-box-1"
- id="compression-box-1"
- @mouseover="handleCompressionMouseover"
- @mouseleave="handleCompressionMouseleave"
- @click="handleAreaClick('压缩区域')">
- <!--<div class="compression-box-text-1"-->
- <!--id="compression-box-text-1">压 缩 区 域</div>-->
- </div>
- <!-- 压缩区域2 -->
- <div class="compression-box-2"
- id="compression-box-2"
- @mouseover="handleCompressionMouseover"
- @mouseleave="handleCompressionMouseleave"
- @click="handleAreaClick('压缩区域')"></div>
- <!-- 压缩区域3 -->
- <div class="compression-box-3"
- id="compression-box-3"
- @mouseover="handleCompressionMouseover"
- @mouseleave="handleCompressionMouseleave"
- @click="handleAreaClick('压缩区域')">
- <!--<div class="compression-box-text-3"-->
- <!--id="compression-box-text-3">压 缩 区 域</div>-->
- </div>
- <!-- 压缩区域4 -->
- <div class="compression-box-4"
- id="compression-box-4"
- @mouseover="handleCompressionMouseover"
- @mouseleave="handleCompressionMouseleave"
- @click="handleAreaClick('压缩区域')"></div>
- <!-- 压缩区域5 -->
- <div class="compression-box-5"
- id="compression-box-5"
- @mouseover="handleCompressionMouseover"
- @mouseleave="handleCompressionMouseleave"
- @click="handleAreaClick('压缩区域')"></div>
- <!-- D201区域 -->
- <div class="d201-box"
- id="d201-box"
- @mouseover="handleD201Mouseover"
- @mouseleave="handleD201Mouseleave"
- @click="handleAreaClick('D201')">
- <!--<div class="d201-box-text"-->
- <!--id="d201-box-text">D 2 0 1</div>-->
- </div>
- <!-- 分离区域1 -->
- <div class="separation-box-1"
- id="separation-box-1"
- @mouseover="handleSeparationMouseover"
- @mouseleave="handleSeparationMouseleave"
- @click="handleAreaClick('分离区域')">
- <!--<div class="separation-box-text-1"-->
- <!--id="separation-box-text-1">分 离 区 域</div>-->
- </div>
- <!-- 分离区域2 -->
- <div class="separation-box-2"
- id="separation-box-2"
- @mouseover="handleSeparationMouseover"
- @mouseleave="handleSeparationMouseleave"
- @click="handleAreaClick('分离区域')"></div>
- <!-- 分离区域3 -->
- <div class="separation-box-3"
- id="separation-box-3"
- @mouseover="handleSeparationMouseover"
- @mouseleave="handleSeparationMouseleave"
- @click="handleAreaClick('分离区域')">
- <!--<div class="separation-box-text-3"-->
- <!--id="separation-box-text-3">分 离 区 域</div>-->
- </div>
- <!-- 分离区域4 -->
- <div class="separation-box-4"
- id="separation-box-4"
- @mouseover="handleSeparationMouseover"
- @mouseleave="handleSeparationMouseleave"
- @click="handleAreaClick('分离区域')"></div>
- <!-- 办公楼区域 -->
- <div class="office-box"
- id="office-box"
- @mouseover="handleOfficeMouseover"
- @mouseleave="handleOfficeMouseleave"
- @click="handleAreaClick('办公楼')">
- <!--<div class="office-box-text"-->
- <!--id="office-box-text">办 公 楼</div>-->
- </div>
- <!-- PGU区域 -->
- <div class="pgu-box"
- id="pgu-box"
- @mouseover="handlePguMouseover"
- @mouseleave="handlePguMouseleave"
- @click="handleAreaClick('PGU区域')">
- <!--<div class="pgu-box-text"-->
- <!--id="pgu-box-text">P G U 区 域</div>-->
- </div>
- <!-- AEU区域1 -->
- <div class="aeu-box-1"
- id="aeu-box-1"
- @mouseover="handleAeuMouseover"
- @mouseleave="handleAeuMouseleave"
- @click="handleAreaClick('AEU区域')"></div>
- <!-- AEU区域2 -->
- <div class="aeu-box-2"
- id="aeu-box-2"
- @mouseover="handleAeuMouseover"
- @mouseleave="handleAeuMouseleave"
- @click="handleAreaClick('AEU区域')">
- <!--<div class="aeu-box-text"-->
- <!--id="aeu-box-text">A E U 区 域</div>-->
- </div>
- <!-- 阴影区域(左下角) -->
- <div class="shadow-box-bottom-left"></div>
- <!-- 阴影区域(右下角) -->
- <div class="shadow-box-bottom-right"></div>
- </div>
- </div>
- </template>
- <script>
- export default {
- data() {
- return {}
- },
- methods: {
- /* 裂解区域mouseover事件 */
- handleCrackingMouseover() {
- let box1 = document.getElementById("cracking-box-1");
- let box2 = document.getElementById("cracking-box-2");
- let box3 = document.getElementById("cracking-box-3");
- box1.style.backgroundColor = "rgba(64,158,255,0.3)";//蓝色
- box2.style.backgroundColor = "rgba(64,158,255,0.3)";
- box3.style.backgroundColor = "rgba(64,158,255,0.3)";
- box1.style.cursor = "pointer";
- box2.style.cursor = "pointer";
- box3.style.cursor = "pointer";
- },
- /* 裂解区域mouseleave事件 */
- handleCrackingMouseleave() {
- let box1 = document.getElementById("cracking-box-1");
- let box2 = document.getElementById("cracking-box-2");
- let box3 = document.getElementById("cracking-box-3");
- box1.style.backgroundColor = "transparent";
- box2.style.backgroundColor = "transparent";
- box3.style.backgroundColor = "transparent";
- },
- /* 压缩区域mouseover事件 */
- handleCompressionMouseover() {
- let box1 = document.getElementById("compression-box-1");
- let box2 = document.getElementById("compression-box-2");
- let box3 = document.getElementById("compression-box-3");
- let box4 = document.getElementById("compression-box-4");
- let box5 = document.getElementById("compression-box-5");
- box1.style.backgroundColor = "rgba(103,194,58,0.3)";//绿色
- box2.style.backgroundColor = "rgba(103,194,58,0.3)";
- box3.style.backgroundColor = "rgba(103,194,58,0.3)";
- box4.style.backgroundColor = "rgba(103,194,58,0.3)";
- box5.style.backgroundColor = "rgba(103,194,58,0.3)";
- box1.style.cursor = "pointer";
- box2.style.cursor = "pointer";
- box3.style.cursor = "pointer";
- box4.style.cursor = "pointer";
- box5.style.cursor = "pointer";
- },
- /* 压缩区域mouseleave事件 */
- handleCompressionMouseleave() {
- let box1 = document.getElementById("compression-box-1");
- let box2 = document.getElementById("compression-box-2");
- let box3 = document.getElementById("compression-box-3");
- let box4 = document.getElementById("compression-box-4");
- let box5 = document.getElementById("compression-box-5");
- box1.style.backgroundColor = "transparent";
- box2.style.backgroundColor = "transparent";
- box3.style.backgroundColor = "transparent";
- box4.style.backgroundColor = "transparent";
- box5.style.backgroundColor = "transparent";
- },
- /* D201区域mouseover事件 */
- handleD201Mouseover() {
- let box = document.getElementById("d201-box");
- box.style.backgroundColor = "rgba(72,209,204,0.3)";//蓝绿色
- box.style.cursor = "pointer";
- },
- /* D201区域mouseleave事件 */
- handleD201Mouseleave() {
- let box = document.getElementById("d201-box");
- box.style.backgroundColor = "transparent";
- },
- /* 分离区域mouseover事件 */
- handleSeparationMouseover() {
- let box1 = document.getElementById("separation-box-1");
- let box2 = document.getElementById("separation-box-2");
- let box3 = document.getElementById("separation-box-3");
- let box4 = document.getElementById("separation-box-4");
- box1.style.backgroundColor = "rgba(218,112,214,0.3)";//紫色
- box2.style.backgroundColor = "rgba(218,112,214,0.3)";
- box3.style.backgroundColor = "rgba(218,112,214,0.3)";
- box4.style.backgroundColor = "rgba(218,112,214,0.3)";
- box1.style.cursor = "pointer";
- box2.style.cursor = "pointer";
- box3.style.cursor = "pointer";
- box4.style.cursor = "pointer";
- },
- /* 分离区域mouseleave事件 */
- handleSeparationMouseleave() {
- let box1 = document.getElementById("separation-box-1");
- let box2 = document.getElementById("separation-box-2");
- let box3 = document.getElementById("separation-box-3");
- let box4 = document.getElementById("separation-box-4");
- box1.style.backgroundColor = "transparent";
- box2.style.backgroundColor = "transparent";
- box3.style.backgroundColor = "transparent";
- box4.style.backgroundColor = "transparent";
- },
- /* 办公楼区域mouseover事件 */
- handleOfficeMouseover() {
- let box = document.getElementById("office-box");
- box.style.backgroundColor = "rgba(255,105,180,0.3)";//粉色
- box.style.cursor = "pointer";
- },
- /* 办公楼区域mouseleave事件 */
- handleOfficeMouseleave() {
- let box = document.getElementById("office-box");
- box.style.backgroundColor = "transparent";
- },
- /* PGU区域mouseover事件 */
- handlePguMouseover() {
- let box = document.getElementById("pgu-box");
- box.style.backgroundColor = "rgba(255,255,0,0.3)";//黄色
- box.style.cursor = "pointer";
- },
- /* PGU区域mouseleave事件 */
- handlePguMouseleave() {
- let box = document.getElementById("pgu-box");
- box.style.backgroundColor = "transparent";
- },
- /* AEU区域mouseover事件 */
- handleAeuMouseover() {
- let box1 = document.getElementById("aeu-box-1");
- let box2 = document.getElementById("aeu-box-2");
- box1.style.backgroundColor = "rgba(255,160,0,0.3)";//橙色
- box2.style.backgroundColor = "rgba(255,160,0,0.3)";
- box1.style.cursor = "pointer";
- box2.style.cursor = "pointer";
- },
- /* AEU区域mouseleave事件 */
- handleAeuMouseleave() {
- let box1 = document.getElementById("aeu-box-1");
- let box2 = document.getElementById("aeu-box-2");
- box1.style.backgroundColor = "transparent";
- box2.style.backgroundColor = "transparent";
- },
- /* 区域click事件 */
- handleAreaClick(areaName, area) {
- this.$router.push({ path: '/aerial/detail', query: { areaName: areaName, area: area }});
- },
- }
- }
- </script>
- <style scoped>
- .app-container {
- padding: 20px;
- }
- .aerial-container {
- position: relative;
- width: 1200px;
- height: 800px;
- padding: 0px;
- margin: 0px auto;
- overflow: hidden;
- background: url('../../../assets/images/aerial.jpg') center/cover; /* 替换为实际背景图路径 */
- background-size: cover;
- background-repeat: no-repeat;
- }
- .cracking-box-1 {
- position:absolute;
- top: 50px;
- left: 70px;
- padding: 0px;
- margin: 0px;
- width: 480px;
- height: 130px;
- }
- .cracking-box-3 {
- position:absolute;
- top: 50px;
- left: 570px;
- padding: 0px;
- margin: 0px;
- width: 140px;
- height: 130px;
- }
- .cracking-box-text-1{
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 640px;
- height: 150px;
- line-height: 150px;
- text-align: center;
- font-size: 28px;
- color: #fff;
- }
- .cracking-box-2 {
- position:absolute;
- top: 210px;
- left: 70px;
- padding: 0px;
- margin: 0px;
- width: 230px;
- height: 160px;
- }
- .cracking-box-text-2 {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 230px;
- height: 170px;
- line-height: 170px;
- text-align: center;
- font-size: 28px;
- color: #fff;
- }
- .compression-box-1 {
- position:absolute;
- top: 240px;
- left: 330px;
- padding: 0px;
- margin: 0px;
- width: 270px;
- height: 130px;
- }
- .compression-box-text-1 {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 270px;
- height: 130px;
- line-height: 130px;
- text-align: center;
- font-size: 28px;
- color: #fff;
- }
- .compression-box-2 {
- position:absolute;
- top: 530px;
- left: 720px;
- padding: 0px;
- margin: 0px;
- width: 80px;
- height: 50px;
- }
- .compression-box-3 {
- position:absolute;
- top: 600px;
- left: 530px;
- padding: 0px;
- margin: 0px;
- width: 230px;
- height: 160px;
- }
- .compression-box-text-3 {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 230px;
- height: 160px;
- line-height: 160px;
- text-align: center;
- font-size: 28px;
- color: #fff;
- }
- .compression-box-4 {
- position:absolute;
- top: 380px;
- left: 250px;
- padding: 0px;
- margin: 0px;
- width: 50px;
- height: 80px;
- }
- .compression-box-5 {
- position:absolute;
- top: 400px;
- left: 340px;
- padding: 0px;
- margin: 0px;
- width: 120px;
- height: 60px;
- }
- .d201-box {
- position:absolute;
- top: 220px;
- left: 630px;
- padding: 0px;
- margin: 0px;
- width: 80px;
- height: 150px;
- }
- .d201-box-text {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 80px;
- height: 150px;
- line-height: 150px;
- text-align: center;
- font-weight: bold;
- color: #fff;
- }
- .separation-box-1 {
- position:absolute;
- top: 400px;
- left: 70px;
- padding: 0px;
- margin: 0px;
- width: 180px;
- height: 140px;
- }
- .separation-box-text-1 {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 180px;
- height: 140px;
- line-height: 140px;
- font-size: 28px;
- text-align: center;
- color: #fff;
- }
- .separation-box-2 {
- position:absolute;
- top: 380px;
- left: 450px;
- padding: 0px;
- margin: 0px;
- width: 250px;
- height: 80px;
- }
- .separation-box-3 {
- position:absolute;
- top: 460px;
- left: 250px;
- padding: 0px;
- margin: 0px;
- width: 450px;
- height: 80px;
- }
- .separation-box-text-3 {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 450px;
- height: 80px;
- line-height: 80px;
- font-size: 28px;
- text-align: center;
- color: #fff;
- }
- .separation-box-4 {
- position:absolute;
- top: 540px;
- left: 360px;
- padding: 0px;
- margin: 0px;
- width: 170px;
- height: 50px;
- }
- .office-box {
- position:absolute;
- top: 70px;
- left: 800px;
- padding: 0px;
- margin: 0px;
- width: 360px;
- height: 140px;
- }
- .office-box-text {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 360px;
- height: 140px;
- line-height: 140px;
- font-size: 28px;
- text-align: center;
- color: #fff;
- }
- .pgu-box {
- position:absolute;
- top: 220px;
- left: 790px;
- padding: 0px;
- margin: 0px;
- width: 270px;
- height: 140px;
- }
- .pgu-box-text {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 270px;
- height: 140px;
- line-height: 140px;
- font-size: 28px;
- text-align: center;
- color: #fff;
- }
- .aeu-box-1 {
- position:absolute;
- top: 380px;
- left: 790px;
- padding: 0px;
- margin: 0px;
- width: 190px;
- height: 40px;
- }
- .aeu-box-2 {
- position:absolute;
- top: 420px;
- left: 790px;
- padding: 0px;
- margin: 0px;
- width: 300px;
- height: 80px;
- }
- .aeu-box-text {
- position:absolute;
- padding: 0px;
- margin: 0px;
- width: 300px;
- height: 80px;
- line-height: 80px;
- font-size: 28px;
- text-align: center;
- color: #fff;
- }
- .shadow-box-bottom-left{
- position:absolute;
- top: 590px;
- left: 0px;
- padding: 0px;
- margin: 0px;
- width: 520px;
- height: 210px;
- background-color: rgba(0,0,0,0.5);
- }
- .shadow-box-bottom-right{
- position:absolute;
- top: 540px;
- left: 800px;
- padding: 0px;
- margin: 0px;
- width: 520px;
- height: 260px;
- background-color: rgba(0,0,0,0.5);
- }
- </style>
|