From fc1ab595e12e8fda05e29f73189b17a332228a13 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Wed, 30 Apr 2025 13:42:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=B0=E5=9B=BE=E6=A8=A1=E5=BC=8F=E5=88=87?= =?UTF-8?q?=E6=8D=A2=E5=8A=9F=E8=83=BD=E8=A1=A5=E5=85=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../css/synthesisQuery/digitalSignage.css | 36 +++++++++++++++ .../js/synthesisQuery/digitalSignage.js | 44 +++++++++++++++---- .../pages/synthesisQuery/digitalSignage.html | 10 +++++ 3 files changed, 81 insertions(+), 9 deletions(-) diff --git a/src/main/resources/static/css/synthesisQuery/digitalSignage.css b/src/main/resources/static/css/synthesisQuery/digitalSignage.css index bf9a5e7..3f10e17 100644 --- a/src/main/resources/static/css/synthesisQuery/digitalSignage.css +++ b/src/main/resources/static/css/synthesisQuery/digitalSignage.css @@ -306,3 +306,39 @@ body { .layui-icon { color: #fff !important; } + +.switch-btn-box { + display: flex; + justify-content: space-between; + align-items: center; + position: absolute; + top: 15px; + right: 15px; + z-index: 999; +} + +.switch-btn-item { + width: 80px; + height: 38px; + line-height: 38px; + text-align: center; + border-radius: 5px; + background-color: #fff; + color: 000; + cursor: pointer; +} + +.switch-btn-box .switch-btn-item:first-child { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.switch-btn-box .switch-btn-item:last-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.active { + background-color: #8ea8e0; + color: #fff; +} diff --git a/src/main/resources/static/js/synthesisQuery/digitalSignage.js b/src/main/resources/static/js/synthesisQuery/digitalSignage.js index 7b56c2c..45661f0 100644 --- a/src/main/resources/static/js/synthesisQuery/digitalSignage.js +++ b/src/main/resources/static/js/synthesisQuery/digitalSignage.js @@ -7,6 +7,7 @@ let crossingList = []; // 跨越列表 let crossingListNew = []; // 跨越列表 let intLng = 116.254; // 初始经度 let intLat = 39.965; // 初始纬度 +let isMap = true; // 是否是地图模式 // 图例数据 const legendData = [ { @@ -256,15 +257,22 @@ function initMap() { }, ]; - map.setMapType(BMAP_EARTH_MAP); // 地球模式 - map.setDisplayOptions({ - poiText: false, // 隐藏POI文字 - poiIcon: false, // 隐藏POI图标 - building: false, // 隐藏建筑物 - }); - map.setMapStyleV2({ - styleJson, - }); + if (isMap) { + map.setMapType(BMAP_EARTH_MAP); // 地球模式 + map.setDisplayOptions({ + poiText: false, // 隐藏POI文字 + poiIcon: false, // 隐藏POI图标 + building: false, // 隐藏建筑物 + }); + } else { + map.setMapType(BMAP_NORMAL_MAP); // 普通模式 + } + + if (isMap) { + map.setMapStyleV2({ + styleJson, + }); + } // 添加地图控件(可选) // map.addControl(new BMapGL.NavigationControl()); @@ -1114,4 +1122,22 @@ document.addEventListener("DOMContentLoaded", function () { drawer.classList.remove("open"); } }); + + const switchBtnItemMap = document.querySelector(".map-btn"); + const switchBtnItemMix = document.querySelector(".mix-btn"); + if (isMap) { + switchBtnItemMap.classList.add("active"); + } + switchBtnItemMap.addEventListener("click", function () { + getLocationInfo(nodeId); + switchBtnItemMap.classList.add("active"); + switchBtnItemMix.classList.remove("active"); + isMap = true; + }); + switchBtnItemMix.addEventListener("click", function () { + getLocationInfo(nodeId); + switchBtnItemMix.classList.add("active"); + switchBtnItemMap.classList.remove("active"); + isMap = false; + }); }); diff --git a/src/main/resources/static/pages/synthesisQuery/digitalSignage.html b/src/main/resources/static/pages/synthesisQuery/digitalSignage.html index c01fdcf..3b3846d 100644 --- a/src/main/resources/static/pages/synthesisQuery/digitalSignage.html +++ b/src/main/resources/static/pages/synthesisQuery/digitalSignage.html @@ -90,6 +90,16 @@
+ + +
+
+ 地图 +
+
+ 混合 +
+