|
@@ -5,7 +5,8 @@
|
|
:style="{ backgroundImage: `url(${getSceneImg()})` }"
|
|
:style="{ backgroundImage: `url(${getSceneImg()})` }"
|
|
>
|
|
>
|
|
<div class="baiyun">
|
|
<div class="baiyun">
|
|
- <img src="@/assets/images/home/baiyun.png" alt="">
|
|
|
|
|
|
+ <img class="baiyun2" src="@/assets/images/home/baiyun2.png" alt="" />
|
|
|
|
+ <img class="baiyun4" src="@/assets/images/home/baiyun4.png" alt="" />
|
|
</div>
|
|
</div>
|
|
<!-- :style="{ 'width': state == 'product' ? '100%' : '' }" -->
|
|
<!-- :style="{ 'width': state == 'product' ? '100%' : '' }" -->
|
|
<div class="left-box">
|
|
<div class="left-box">
|
|
@@ -39,6 +40,7 @@
|
|
<!-- 简介 -->
|
|
<!-- 简介 -->
|
|
<div
|
|
<div
|
|
class="list-item"
|
|
class="list-item"
|
|
|
|
+ style="animation-duration: 3s"
|
|
@click="
|
|
@click="
|
|
() => {
|
|
() => {
|
|
state = 'info';
|
|
state = 'info';
|
|
@@ -65,6 +67,7 @@
|
|
<!-- 全景 -->
|
|
<!-- 全景 -->
|
|
<div
|
|
<div
|
|
class="list-item"
|
|
class="list-item"
|
|
|
|
+ style="animation-duration: 3.5s"
|
|
@click="
|
|
@click="
|
|
() => {
|
|
() => {
|
|
(state = 'full'), (currentV = dataAll.full.content[0]);
|
|
(state = 'full'), (currentV = dataAll.full.content[0]);
|
|
@@ -91,6 +94,7 @@
|
|
<!-- 展馆 -->
|
|
<!-- 展馆 -->
|
|
<div
|
|
<div
|
|
class="list-item"
|
|
class="list-item"
|
|
|
|
+ style="animation-duration: 4s"
|
|
@click="
|
|
@click="
|
|
() => {
|
|
() => {
|
|
state = 'scene';
|
|
state = 'scene';
|
|
@@ -124,9 +128,10 @@
|
|
<!-- 馆藏 -->
|
|
<!-- 馆藏 -->
|
|
<div
|
|
<div
|
|
class="list-item"
|
|
class="list-item"
|
|
|
|
+ style="animation-duration: 4.5s"
|
|
@click="
|
|
@click="
|
|
() => {
|
|
() => {
|
|
- (state = 'product');
|
|
|
|
|
|
+ state = 'product';
|
|
}
|
|
}
|
|
"
|
|
"
|
|
>
|
|
>
|
|
@@ -150,7 +155,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- 列表右侧 -->
|
|
<!-- 列表右侧 -->
|
|
- <div class="babar-content">
|
|
|
|
|
|
+ <div class="babar-content" v-show="state != 'home'">
|
|
<!-- 简介 -->
|
|
<!-- 简介 -->
|
|
<!-- introData.rtf || -->
|
|
<!-- introData.rtf || -->
|
|
<div
|
|
<div
|
|
@@ -274,7 +279,7 @@
|
|
<!-- quanjing -->
|
|
<!-- quanjing -->
|
|
<div
|
|
<div
|
|
class="v-labels full"
|
|
class="v-labels full"
|
|
- :class="{ active: item.id == activequanjing, mxd: item.class == 'mxd', }"
|
|
|
|
|
|
+ :class="{ active: item.id == activequanjing, mxd: item.class == 'mxd' }"
|
|
v-show="state == 'full'"
|
|
v-show="state == 'full'"
|
|
v-for="item in dataAll.full.vLabels"
|
|
v-for="item in dataAll.full.vLabels"
|
|
@click="handlequanjing(item)"
|
|
@click="handlequanjing(item)"
|
|
@@ -282,10 +287,10 @@
|
|
:style="{ top: item.top, right: item.right }"
|
|
:style="{ top: item.top, right: item.right }"
|
|
>
|
|
>
|
|
<img
|
|
<img
|
|
- v-if="item.class == 'mxd'"
|
|
|
|
- :src="item.id == activequanjing ? mxda : mxd"
|
|
|
|
- alt=""
|
|
|
|
- />
|
|
|
|
|
|
+ v-if="item.class == 'mxd'"
|
|
|
|
+ :src="item.id == activequanjing ? mxda : mxd"
|
|
|
|
+ alt=""
|
|
|
|
+ />
|
|
<img v-else :src="item.id == activequanjing ? lable3a : lable3" alt="" />
|
|
<img v-else :src="item.id == activequanjing ? lable3a : lable3" alt="" />
|
|
<div style="width: 100%">{{ item.name }}</div>
|
|
<div style="width: 100%">{{ item.name }}</div>
|
|
</div>
|
|
</div>
|
|
@@ -392,11 +397,13 @@ export default {
|
|
},
|
|
},
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- handlequanjing(item){
|
|
|
|
|
|
+ handlequanjing(item) {
|
|
this.activequanjing = item.id;
|
|
this.activequanjing = item.id;
|
|
- let ele = this.dataAll.full.content.find(items => items.name == item.name)
|
|
|
|
- console.log(ele,'ele', item)
|
|
|
|
- if(ele){
|
|
|
|
|
|
+ let ele = this.dataAll.full.content.find(
|
|
|
|
+ (items) => items.name == item.name
|
|
|
|
+ );
|
|
|
|
+ console.log(ele, "ele", item);
|
|
|
|
+ if (ele) {
|
|
this.currentV = ele;
|
|
this.currentV = ele;
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -503,21 +510,21 @@ export default {
|
|
this.$request.get("/show/intro/detail").then((res) => {
|
|
this.$request.get("/show/intro/detail").then((res) => {
|
|
this.introData = {
|
|
this.introData = {
|
|
...res.data,
|
|
...res.data,
|
|
- rtf: decodeURIComponent(res.data.rtf.replace(/%/g, '%25')),
|
|
|
|
|
|
+ rtf: decodeURIComponent(res.data.rtf.replace(/%/g, "%25")),
|
|
};
|
|
};
|
|
console.log(this.introData);
|
|
console.log(this.introData);
|
|
});
|
|
});
|
|
this.$request.get("/show/about/getList").then((res) => {
|
|
this.$request.get("/show/about/getList").then((res) => {
|
|
- let introduction = []
|
|
|
|
- res.data.map(ele => {
|
|
|
|
|
|
+ let introduction = [];
|
|
|
|
+ res.data.map((ele) => {
|
|
introduction.push({
|
|
introduction.push({
|
|
...ele,
|
|
...ele,
|
|
- rtf: unescape(ele.rtf)
|
|
|
|
- })
|
|
|
|
|
|
+ rtf: unescape(ele.rtf),
|
|
|
|
+ });
|
|
});
|
|
});
|
|
- this.introduction = introduction
|
|
|
|
|
|
+ this.introduction = introduction;
|
|
let item = (this.introduction && this.introduction[0]) || false;
|
|
let item = (this.introduction && this.introduction[0]) || false;
|
|
- console.log('rtfitem', item, introduction);
|
|
|
|
|
|
+ console.log("rtfitem", item, introduction);
|
|
if (item) {
|
|
if (item) {
|
|
this.changeType(item);
|
|
this.changeType(item);
|
|
}
|
|
}
|
|
@@ -542,7 +549,7 @@ export default {
|
|
console.log("changeType", item);
|
|
console.log("changeType", item);
|
|
this.productActive = item.name;
|
|
this.productActive = item.name;
|
|
// this.productHtml = item.rtf?decodeURIComponent(item.rtf): item.text;
|
|
// this.productHtml = item.rtf?decodeURIComponent(item.rtf): item.text;
|
|
- this.productHtml =unescape(item.rtf || item.text);
|
|
|
|
|
|
+ this.productHtml = unescape(item.rtf || item.text);
|
|
let parent = document.getElementById("result-box-div");
|
|
let parent = document.getElementById("result-box-div");
|
|
parent.scrollTop = 0;
|
|
parent.scrollTop = 0;
|
|
},
|
|
},
|
|
@@ -663,15 +670,29 @@ export default {
|
|
width: 116px;
|
|
width: 116px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- .baiyun{
|
|
|
|
|
|
+ .baiyun {
|
|
position: absolute;
|
|
position: absolute;
|
|
- left: 100%;
|
|
|
|
- animation: slideshow 10s linear infinite;
|
|
|
|
-
|
|
|
|
|
|
+ left: -100%;
|
|
|
|
+ animation: slideshow 23s linear infinite;
|
|
|
|
+ .baiyun4 {
|
|
|
|
+ position: absolute;
|
|
|
|
+ width: 1400px;
|
|
|
|
+ top: 45%;
|
|
|
|
+ left: -56%;
|
|
|
|
+ }
|
|
|
|
+ .baiyun2 {
|
|
|
|
+ width: 1700px;
|
|
|
|
+ position: relative;
|
|
|
|
+ top: -300px;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
@keyframes slideshow {
|
|
@keyframes slideshow {
|
|
- 0% { left: 100%; }
|
|
|
|
- 100% { left: -100%; }
|
|
|
|
|
|
+ 0% {
|
|
|
|
+ left: -100%;
|
|
|
|
+ }
|
|
|
|
+ 100% {
|
|
|
|
+ left: 160%;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
.left-box {
|
|
.left-box {
|
|
width: 57%;
|
|
width: 57%;
|
|
@@ -746,6 +767,7 @@ export default {
|
|
position: absolute;
|
|
position: absolute;
|
|
top: 0;
|
|
top: 0;
|
|
left: 0;
|
|
left: 0;
|
|
|
|
+ animation: bounceInLeft 1s 1 cubic-bezier(0.215, 0.61, 0.355, 1);
|
|
|
|
|
|
.title {
|
|
.title {
|
|
width: 100%;
|
|
width: 100%;
|
|
@@ -768,6 +790,7 @@ export default {
|
|
justify-content: center;
|
|
justify-content: center;
|
|
|
|
|
|
&-item {
|
|
&-item {
|
|
|
|
+ animation: numeInLeft 3s 1 0s cubic-bezier(0.215, 0.61, 0.355, 1);
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 10vh;
|
|
height: 10vh;
|
|
display: flex;
|
|
display: flex;
|
|
@@ -837,13 +860,14 @@ export default {
|
|
position: absolute;
|
|
position: absolute;
|
|
top: 0;
|
|
top: 0;
|
|
right: 0;
|
|
right: 0;
|
|
|
|
+ animation: bounceopacity 6s 1 0s cubic-bezier(0.215, 0.61, 0.355, 1);
|
|
|
|
|
|
.info-box {
|
|
.info-box {
|
|
color: white;
|
|
color: white;
|
|
width: 80%;
|
|
width: 80%;
|
|
max-height: 90%;
|
|
max-height: 90%;
|
|
overflow: auto;
|
|
overflow: auto;
|
|
- font-size: 1.2em;
|
|
|
|
|
|
+ font-size: 20px;
|
|
letter-spacing: 1px;
|
|
letter-spacing: 1px;
|
|
line-height: 2em;
|
|
line-height: 2em;
|
|
font-family: Source Han Sans SC, Source Han Sans SC;
|
|
font-family: Source Han Sans SC, Source Han Sans SC;
|
|
@@ -855,7 +879,7 @@ export default {
|
|
|
|
|
|
.full-box {
|
|
.full-box {
|
|
width: 88%;
|
|
width: 88%;
|
|
- height: 60%;
|
|
|
|
|
|
+ height: 62%;
|
|
.v-list {
|
|
.v-list {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 30px;
|
|
height: 30px;
|
|
@@ -889,7 +913,7 @@ export default {
|
|
margin-top: 20px;
|
|
margin-top: 20px;
|
|
width: 100%;
|
|
width: 100%;
|
|
max-height: calc(100% - 50px);
|
|
max-height: calc(100% - 50px);
|
|
- padding: 0 1.5%;
|
|
|
|
|
|
+ padding: 0 1.5% 10px 1.5%;
|
|
overflow: auto;
|
|
overflow: auto;
|
|
display: grid;
|
|
display: grid;
|
|
grid-template-columns: repeat(2, 1fr);
|
|
grid-template-columns: repeat(2, 1fr);
|
|
@@ -1226,9 +1250,71 @@ export default {
|
|
height: 100vh;
|
|
height: 100vh;
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
}
|
|
}
|
|
|
|
+@keyframes bounceopacity {
|
|
|
|
+ 0% {
|
|
|
|
+ opacity: 0;
|
|
|
|
+ }
|
|
|
|
+ 100% {
|
|
|
|
+ opacity: 1;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+@keyframes bounceInLeft {
|
|
|
|
+ 0% {
|
|
|
|
+ opacity: 0;
|
|
|
|
+ transform: translate3d(-200px, 0, 0);
|
|
|
|
+ }
|
|
|
|
+ 100% {
|
|
|
|
+ opacity: 1;
|
|
|
|
+ transform: translate3d(0px, 0, 0);
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+@keyframes numeInLeft {
|
|
|
|
+ 0% {
|
|
|
|
+ opacity: 0;
|
|
|
|
+ transform: translate3d(-500px, 0, 0);
|
|
|
|
+ }
|
|
|
|
+ 100% {
|
|
|
|
+ opacity: 1;
|
|
|
|
+ transform: translate3d(0px, 0, 0);
|
|
|
|
+ }
|
|
|
|
+}
|
|
</style>
|
|
</style>
|
|
-<style>
|
|
|
|
-.media-wrap{
|
|
|
|
|
|
+<style lang="less">
|
|
|
|
+.media-wrap {
|
|
text-align: center;
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
+.v-labels {
|
|
|
|
+ animation: backInDown 1s 1 cubic-bezier(0.215, 0.61, 0.355, 1);
|
|
|
|
+ &:hover {
|
|
|
|
+ transform: scale(1.05);
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+.active {
|
|
|
|
+ // animation: lableInLeft 1s 1 cubic-bezier(0.215, 0.61, 0.355, 1);
|
|
|
|
+}
|
|
|
|
+@keyframes lableInLeft {
|
|
|
|
+ 0% {
|
|
|
|
+ transform: perspective(1px) scale(1);
|
|
|
|
+ }
|
|
|
|
+ 100% {
|
|
|
|
+ transform: perspective(1px) scale(1.05);
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+@keyframes backInDown {
|
|
|
|
+ 0% {
|
|
|
|
+ opacity: 0.7;
|
|
|
|
+ -webkit-transform: translateY(-1200px) scale(0.7);
|
|
|
|
+ transform: translateY(-1200px) scale(0.7);
|
|
|
|
+ }
|
|
|
|
+ 80% {
|
|
|
|
+ opacity: 0.7;
|
|
|
|
+ -webkit-transform: translateY(0) scale(0.7);
|
|
|
|
+ transform: translateY(0) scale(0.7);
|
|
|
|
+ }
|
|
|
|
+ to {
|
|
|
|
+ opacity: 1;
|
|
|
|
+ -webkit-transform: scale(1);
|
|
|
|
+ transform: scale(1);
|
|
|
|
+ }
|
|
|
|
+}
|
|
</style>
|
|
</style>
|