You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
134 lines
2.8 KiB
134 lines
2.8 KiB
<template>
|
|
<div>
|
|
<!-- 地图容器 -->
|
|
<div id="mapContainer" :class="$route.path === '/billboard' ? 'billboard' : $route.path === '/guide' ? 'guide' : ''" />
|
|
|
|
<!-- 地图弹框 -->
|
|
<div id="shopInfo" class="boxShop boxShop2" :style="{ backgroundImage: `url(${require('@/assets/images/map/map-dialog.png')})` }">
|
|
<div id="shopNum">{{ switchLanguage(shop, 'shopName') }}</div>
|
|
<div style="display: flex; align-items: center">
|
|
<div class="pop-bottom" @click="handleDetail">{{ $t('detail') }}</div>
|
|
<div class="go-button" @click="handleGO">{{ $t('nav') }}</div>
|
|
</div>
|
|
</div>
|
|
<div id="moveFloorBG">
|
|
<span id="moveFloor"></span>
|
|
<div style="position: absolute; z-index: 128" id="floorBox"></div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { storeToRefs } from 'pinia'
|
|
import { useStore } from '@/store/root'
|
|
|
|
const store = useStore()
|
|
const { shop } = storeToRefs(store)
|
|
|
|
const emits = defineEmits(['handle-GO', 'handle-Detail'])
|
|
|
|
function handleGO() {
|
|
emits('handle-GO')
|
|
}
|
|
|
|
// 点击地图弹框详情
|
|
function handleDetail() {
|
|
emits('handle-Detail')
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
@import '@/assets/scss/mixin.scss';
|
|
|
|
#mapContainer {
|
|
position: absolute;
|
|
top: 118px;
|
|
left: 0;
|
|
height: 642px;
|
|
width: 1080px;
|
|
z-index: 10;
|
|
overflow: hidden;
|
|
&.billboard {
|
|
pointer-events: none;
|
|
}
|
|
&.guide {
|
|
top: 408px;
|
|
}
|
|
}
|
|
|
|
#shopInfo {
|
|
position: absolute;
|
|
z-index: 9000 !important;
|
|
visibility: hidden;
|
|
width: 235px;
|
|
height: 158px;
|
|
background-size: contain;
|
|
background-repeat: no-repeat;
|
|
background-position: center center;
|
|
#shopNum {
|
|
height: 75px;
|
|
line-height: 80px;
|
|
padding: 10px 36px 0 36px;
|
|
color: #ffffff;
|
|
font-family: 'font_medium';
|
|
font-size: 20px;
|
|
@include no-wrap;
|
|
}
|
|
.go-button {
|
|
width: 50%;
|
|
text-align: center;
|
|
line-height: 50px;
|
|
font-weight: bold;
|
|
font-size: 18px;
|
|
color: #6a5e59;
|
|
height: 50px;
|
|
font-family: 'font_medium';
|
|
text-align: center;
|
|
}
|
|
|
|
.pop-bottom {
|
|
font-weight: bold;
|
|
font-size: 17px;
|
|
width: 50%;
|
|
height: 50px;
|
|
line-height: 50px;
|
|
color: #6a5e59;
|
|
overflow: hidden;
|
|
font-family: 'font_medium';
|
|
text-align: center;
|
|
}
|
|
}
|
|
#moveFloorBG {
|
|
position: absolute;
|
|
visibility: hidden;
|
|
border-radius: 5px;
|
|
width: 32px;
|
|
background-color: #ffffff;
|
|
z-index: 126;
|
|
}
|
|
#moveFloor {
|
|
position: absolute;
|
|
bottom: 2px;
|
|
left: 2px;
|
|
border-radius: 5px;
|
|
background-color: #dbb186;
|
|
opacity: 1;
|
|
width: 28px;
|
|
height: 28px;
|
|
z-index: 128;
|
|
}
|
|
.other-pop {
|
|
height: 36px;
|
|
background: #ad9c85;
|
|
border: 2px solid #ffffff;
|
|
border-radius: 20px;
|
|
position: fixed;
|
|
padding: 0 24px;
|
|
font-size: 16px;
|
|
line-height: 24px;
|
|
color: #ffffff;
|
|
display: flex;
|
|
align-items: center;
|
|
user-select: none;
|
|
}
|
|
</style>
|
|
|