Commit b8fb914e authored by “yiyousong”'s avatar “yiyousong”

perf:修改页面

parent 2af0acbc
...@@ -78,9 +78,9 @@ html{ ...@@ -78,9 +78,9 @@ html{
z-index: 10; z-index: 10;
} */ } */
.e-icon{ /* .e-icon{
background: #000; background: #000;
} } */
.e-icon a { .e-icon a {
display: flex; display: flex;
width: 100%; width: 100%;
......
<template>
<div class="content" v-if="show">
<div class="modal">
<div class="effect-content">
<div class="effect-box">
<div class="e-icon-box"></div>
</div>
</div>
</div>
</div>
<div class="platform w-full h-auto" v-else>
<div class="pla_cont">
<h1>平台设置</h1>
<div class="pla_modle">
<a-card v-if="platformPermission.length">
<a-card-grid
style="width: 25%"
v-for="v in platformPermission"
:key="v.id"
@click="handleClick(v.url)"
>
<div class="pla_max">
<div class="pla_min">
<img
:src="
v.imgPath
? api + v.imgPath
: require('../../assets/images/RBAC.png')
"
alt
/>
<p class="name">{{ v.name }}</p>
<p class="remark">{{ v.remark }}</p>
</div>
</div>
</a-card-grid>
</a-card>
<a-empty
v-else
:image="require('../../assets/images/empty.png')"
:image-style="{
height: '60px',
}"
>
<span slot="description">
<a href="#API">暂无权限</a>
</span>
</a-empty>
</div>
</div>
</div>
</template>
<script>
import Storage from "@/utils/js/Storage";
// import "./index.css";
import { mapState, mapMutations, mapGetters } from "vuex";
let _this = null;
const anim_data = {
domArr: [],
// [
// // 杂乱的正方形
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(-33deg,#8f35ff,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%),linear-gradient(116deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
// topStr: "calc(50% - 421rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 756rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0.2, 0.4], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "80rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(133deg,rgba(255,186,0,0),rgba(255,207,0,.6) 68%),linear-gradient(170deg,#ffc400,#ff9200),linear-gradient(170deg,#ffc400,#ff9200)",
// topStr: "calc(50% - 192rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 487rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// opacityAnimMap: new Map([]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "#cc7201",
// backgroundImageStr: "",
// topStr: "calc(50% - 141rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 624rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.8,
// opacityAnimMap: new Map([
// [0, 0.8],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "40rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#3e9eff,#0062ff)",
// topStr: "calc(50% - 67rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 316rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.75,
// opacityAnimMap: new Map([
// [0, 0.75],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "46rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
// topStr: "calc(50% - 28rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 259rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "72rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 175rem)",
// leftStr: "calc(50% - 579rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0, 0.4],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 412rem)",
// leftStr: "calc(50% - 701rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
// topStr: "calc(50% - 3rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 243rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(-27deg,rgba(143,53,255,.8) 11%,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%)",
// topStr: "calc(50% - 473rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 154rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "46rem",
// backgroundColorStr: "#ffa800",
// backgroundImageStr: "",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 98rem)",
// leftStr: "calc(50% - 362rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(180deg,#004fff,rgba(0,45,156,0) 70%)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 498rem)",
// leftStr: "calc(50% - 165rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "40rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 352rem)",
// leftStr: "calc(50% - 26rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.35,
// opacityAnimMap: new Map([
// [0, 0.35],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%),-webkit-linear-gradient(334deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
// topStr: "calc(50% - 395rem)",
// rightStr: "calc(50% - 102rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0, 0.4],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "calc(50% - 206rem)",
// rightStr: "calc(50% - 38rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "130rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "calc(50% - 263rem)",
// rightStr: "calc(50% - 704rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.67,
// opacityAnimMap: new Map([
// [0, 0.67],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(128deg,#00ebb6,#00ba46 69%)",
// topStr: "calc(50% - 226rem)",
// rightStr: "calc(50% - 505rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#ffc400,rgba(255,207,0,.6))",
// topStr: "calc(50% - 52rem)",
// rightStr: "calc(50% - 218rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#00b6ff,#007fff)",
// topStr: "",
// rightStr: "calc(50% - 300rem)",
// bottomStr: "calc(50% - 49rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(148deg,#76d2ff,#09baff 99%)",
// topStr: "",
// rightStr: "calc(50% - 453rem)",
// bottomStr: "calc(50% - 170rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(136deg,#3e9eff 19%,#0062ff)",
// topStr: "",
// rightStr: "calc(50% - 657rem)",
// bottomStr: "calc(50% - 133rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,rgba(0,79,255,.6),rgba(0,45,156,.6) 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "",
// rightStr: "calc(50% - 800rem)",
// bottomStr: "calc(50% - 345rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.5,
// opacityAnimMap: new Map([
// [0, 0.5],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
// topStr: "",
// rightStr: "calc(50% - 213rem)",
// bottomStr: "calc(50% - 532rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
// topStr: "",
// rightStr: "calc(50% - 213rem)",
// bottomStr: "calc(50% - 532rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// // logo 图标
// {
// widthStr: "190rem",
// backgroundColorStr: "",
// backgroundStr:
// "url(" +
// require("@/assets/images/siteArrange/logo-pingtai.png") +
// ") center no-repeat",
// topStr: "calc(50% - 90rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 90rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// index: 99,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // logo 图标
// {
// widthStr: "180rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(0deg, #2254F3 0%, #15C5FF 100%)",
// topStr: "calc(50% - 90rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 90rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // 平台设置字体
// {
// widthStr: "200rem",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(62%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 98rem)",
// className: "e-square",
// parentClassName: "effect-box",
// text: "平台设置",
// fontSizeStr: "48rem",
// fontColorStr: "#ffffff",
// opacity: 1,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // e-icon-box 相关元素
// // e-icon-box-bg
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "e-icon-box-bg",
// parentClassName: "e-icon-box",
// opacity: 0,
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// // e-icon-box 上部字体
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(-38%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "title_boxx",
// parentClassName: "e-icon-box",
// text: "平台设置",
// opacity: 0,
// fontColorStr: "#ffffff",
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(-16%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "desc_boxx",
// parentClassName: "e-icon-box",
// text: "运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。",
// opacity: 0,
// fontColorStr: "#ffffff",
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// // e-icon 上行
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 450, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 300, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 300, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: 300, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 150, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 150, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: 150, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.7, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 0, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 0, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.7,
// // {
// // translate3d: { x: 0, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -150, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -150, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: -150, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -300, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -300, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: -300, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -450, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // e-icon 下行
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 450, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 300, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 300, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: 300, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 150, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 150, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: 150, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.7, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 0, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 0, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.7,
// // {
// // translate3d: { x: 0, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -150, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -150, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: -150, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -300, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -300, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: -300, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -450, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// ],
};
// 特效管理
class EffectManager {
constructor(data = anim_data) {
data.domArr.forEach((item) => {
const entity = new Entity();
// 添加形状组件
entity.addComp(
new ShapeComp({
shapeAtt: item,
})
);
// 添加动画组件
entity.addComp(
new ShapeAnimComp({
opacityAnimMap: item.opacityAnimMap,
transformAnimMap: item.transformAnimMap,
})
);
// 添加滚动事件组件
entity.addComp(
new RollEventComp({
cb: function (scrollPos) {
this.getComp("ShapeAnimComp").changeOpacity(
scrollPos,
this.getComp("ShapeComp")
);
this.getComp("ShapeAnimComp").changeTransform(
scrollPos,
this.getComp("ShapeComp")
);
}.bind(entity),
})
);
});
}
}
// 单体
class Entity {
constructor() {
this._compMap = new Map();
}
addComp(comp) {
this._compMap.set(comp.name, comp);
}
getComp(compName) {
return this._compMap.get(compName);
}
}
// 形状组件
class ShapeComp {
constructor(data) {
this.name = "ShapeComp";
this._shapeDom = document.createElement("div");
this._shapeDom.classList.add(data.shapeAtt.className);
this._shapeDom.style.width = data.shapeAtt.widthStr;
this._shapeDom.style.height = data.shapeAtt.widthStr;
data.shapeAtt.backgroundImageStr
? (this._shapeDom.style.backgroundImage =
data.shapeAtt.backgroundImageStr)
: data.shapeAtt.backgroundStr
? (this._shapeDom.style.background = data.shapeAtt.backgroundStr)
: "";
this._shapeDom.style.top = data.shapeAtt.topStr;
this._shapeDom.style.right = data.shapeAtt.rightStr;
this._shapeDom.style.bottom = data.shapeAtt.bottomStr;
this._shapeDom.style.left = data.shapeAtt.leftStr;
this._shapeDom.style.backgroundColor = data.shapeAtt.backgroundColorStr;
data.shapeAtt.fontColorStr
? (this._shapeDom.style.color = data.shapeAtt.fontColorStr)
: "";
data.shapeAtt.fontSizeStr
? (this._shapeDom.style.fontSize = data.shapeAtt.fontSizeStr)
: "";
data.shapeAtt.text ? (this._shapeDom.innerHTML = data.shapeAtt.text) : "";
data.shapeAtt.index
? (this._shapeDom.style.zIndex = data.shapeAtt.index)
: "";
if (data.shapeAtt.url) {
let aE = document.createElement("a");
let imgDom = document.createElement("div");
imgDom.style.width = "66rem";
imgDom.style.height = "66rem";
imgDom.style.background =
"url(" + _this.api + data.shapeAtt.imgPath + ") no-repeat";
imgDom.style.backgroundSize = "100%";
let txtDom = document.createElement("span");
txtDom.innerHTML = data.shapeAtt.name;
aE.setAttribute("href", "#" + data.shapeAtt.url);
aE.appendChild(imgDom);
aE.appendChild(txtDom);
this._shapeDom.appendChild(aE);
}
document
.getElementsByClassName(data.shapeAtt.parentClassName)[0]
.appendChild(this._shapeDom);
this._opacity = null;
this._transform = null;
this.opacity = data.shapeAtt.opacity;
this.transform = data.shapeAtt.transform;
}
set opacity(value) {
if (value !== this._opacity) {
this._shapeDom.style.opacity = value + "";
}
this._opacity = value;
}
get opacity() {
return this._opacity;
}
set transform(value) {
let transformStr = "";
if (value.translate3d !== undefined) {
transformStr = `translate3d(${value.translate3d.x}rem, ${value.translate3d.y}rem, ${value.translate3d.z}rem)`;
}
if (value.scale !== undefined) {
transformStr += `scale(${value.scale})`;
}
this._shapeDom.style.transform = transformStr;
this._transform = value;
}
get transform() {
return this._transform;
}
}
// 动画组件
class ShapeAnimComp {
constructor(data) {
this.name = "ShapeAnimComp";
this._opacityAnimMap = data.opacityAnimMap;
this._transformAnimMap = data.transformAnimMap;
}
// 返回根据滚动改变的状态值
_getStateValue(scrollPos, beginPos, endPos, beginValue, endValue) {
if (beginValue === endValue) {
return beginValue;
}
const value =
((endValue - beginValue) * (scrollPos - beginPos)) / (endPos - beginPos) +
beginValue;
return Number(value.toFixed(3));
}
// 根据滚动值改变透明度
changeOpacity(scrollPos, shapeComp) {
if (this._opacityAnimMap.size === 0) {
return;
}
const keyArr = [...this._opacityAnimMap.keys()].sort((a, b) => a - b);
const beginPos = keyArr.findLast((item) => item <= scrollPos);
let beginValue = this._opacityAnimMap.get(beginPos);
const endPos = keyArr.find((item) => item >= scrollPos);
let endValue = this._opacityAnimMap.get(endPos);
if (beginValue === undefined && endValue !== undefined) {
beginValue = endValue;
} else if (beginValue !== undefined && endValue === undefined) {
endValue = beginValue;
} else if (beginValue === undefined && endValue === undefined) {
return;
}
const opacity = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue,
endValue
);
shapeComp.opacity = opacity;
}
// 根据滚动值改变 transform
changeTransform(scrollPos, shapeComp) {
if (this._transformAnimMap.size === 0) {
return;
}
let transform = {};
const keyArr = [...this._transformAnimMap.keys()].sort((a, b) => a - b);
const beginPos = keyArr.findLast((item) => item <= scrollPos);
let beginValue = this._transformAnimMap.get(beginPos);
const endPos = keyArr.find((item) => item >= scrollPos);
let endValue = this._transformAnimMap.get(endPos);
if (beginValue === undefined && endValue !== undefined) {
beginValue = endValue;
} else if (beginValue !== undefined && endValue === undefined) {
endValue = beginValue;
} else if (beginValue === undefined && endValue === undefined) {
return;
}
// translate3d
if (beginValue.translate3d !== undefined) {
const translate3dx = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.x,
endValue.translate3d.x
);
const translate3dy = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.y,
endValue.translate3d.y
);
const translate3dz = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.z,
endValue.translate3d.z
);
transform.translate3d = {
x: translate3dx,
y: translate3dy,
z: translate3dz,
};
}
// scale
if (beginValue.scale !== undefined) {
const scale = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.scale,
endValue.scale
);
transform.scale = scale;
}
shapeComp.transform = transform;
}
}
// 滚动事件组件
class RollEventComp {
constructor(data) {
this.name = "RollEventComp";
let index = 0;
// let set = setInterval(function () {
// index += 0.004;
// data.cb(index);
// if (index >= 0.43) {
// document.getElementsByClassName("effect-box")[0]
// ? (document.getElementsByClassName(
// "effect-box"
// )[0].style.backgroundColor = `rgba(3, 18, 51, ${
// 0 ? 0 : 0.5 - index
// })`)
// : "";
// }
// if (index > 1) {
// clearInterval(set);
// }
// });
function fn() {
index += 0.018;
data.cb(index);
if (index >= 0.43) {
document.getElementsByClassName("effect-box")[0]
? (document.getElementsByClassName(
"effect-box"
)[0].style.backgroundColor = `rgba(3, 18, 51, ${
0 ? 0 : 0.5 - index
})`)
: "";
}
if (index < 1.1) {
window.requestAnimationFrame(fn);
}
}
window.requestAnimationFrame(fn);
// window.addEventListener("scroll", (event) => {
// const scrollTop = document.documentElement.scrollTop;
// const scrollHeight = document.documentElement.scrollHeight;
// const clientHeight = document.documentElement.clientHeight;
// let scrollPos = 0;
// if (scrollTop + clientHeight >= scrollHeight - 5) {
// scrollPos = 1;
// } else if (scrollTop === 0) {
// scrollPos = 0;
// } else {
// scrollPos = Number(
// (scrollTop / (scrollHeight - clientHeight)).toFixed(3)
// );
// }
// console.log(scrollPos, "###########");
// data.cb(scrollPos);
// });
}
}
export default {
data() {
return {
api: process.env.VUE_APP_API_IMG_URL,
platformPermission: [],
show: true,
};
},
created() {
this.$nextTick(() => {
this.getPlatformChildren();
});
},
mounted() {
_this = this;
// 重置根字体大小
let root = document.documentElement;
root.style.fontSize = "var(--base-font-size)";
},
computed: {
...mapState("user", ["siteList", "userData"]),
},
methods: {
// 获取平台子菜单
getPlatformChildren() {
let { menuList } = this.userData;
let platform = menuList.filter((v) => v.name === "平台设置");
if (platform.length) {
this.platformPermission = platform
.map((v) => {
if (v.childList.length) {
return v.childList;
} else {
return [];
}
})
.flat();
}
anim_data.domArr = [
// 杂乱的正方形
{
widthStr: "160rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-33deg,#8f35ff,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%),linear-gradient(116deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
topStr: "calc(50% - 421rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 756rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.4,
opacityAnimMap: new Map([
[0.2, 0.4], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "80rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(133deg,rgba(255,186,0,0),rgba(255,207,0,.6) 68%),linear-gradient(170deg,#ffc400,#ff9200),linear-gradient(170deg,#ffc400,#ff9200)",
topStr: "calc(50% - 192rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 487rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
opacityAnimMap: new Map([]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "#cc7201",
backgroundImageStr: "",
topStr: "calc(50% - 141rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 624rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.8,
opacityAnimMap: new Map([
[0, 0.8],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "40rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(170deg,#3e9eff,#0062ff)",
topStr: "calc(50% - 67rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 316rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.75,
opacityAnimMap: new Map([
[0, 0.75],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "46rem",
backgroundColorStr: "",
backgroundImageStr:
"radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
topStr: "calc(50% - 28rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 259rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "72rem",
backgroundColorStr: "",
backgroundImageStr:
"radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 175rem)",
leftStr: "calc(50% - 579rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.4,
opacityAnimMap: new Map([
[0, 0.4],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "160rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 412rem)",
leftStr: "calc(50% - 701rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
topStr: "calc(50% - 3rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 243rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-27deg,rgba(143,53,255,.8) 11%,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%)",
topStr: "calc(50% - 473rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 154rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "46rem",
backgroundColorStr: "#ffa800",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 98rem)",
leftStr: "calc(50% - 362rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(180deg,#004fff,rgba(0,45,156,0) 70%)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 498rem)",
leftStr: "calc(50% - 165rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "40rem",
backgroundColorStr: "",
backgroundImageStr:
"-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 352rem)",
leftStr: "calc(50% - 26rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.35,
opacityAnimMap: new Map([
[0, 0.35],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr:
"-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%),-webkit-linear-gradient(334deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
topStr: "calc(50% - 395rem)",
rightStr: "calc(50% - 102rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.4,
opacityAnimMap: new Map([
[0, 0.4],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "calc(50% - 206rem)",
rightStr: "calc(50% - 38rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "130rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "calc(50% - 263rem)",
rightStr: "calc(50% - 704rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.67,
opacityAnimMap: new Map([
[0, 0.67],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(128deg,#00ebb6,#00ba46 69%)",
topStr: "calc(50% - 226rem)",
rightStr: "calc(50% - 505rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(170deg,#ffc400,rgba(255,207,0,.6))",
topStr: "calc(50% - 52rem)",
rightStr: "calc(50% - 218rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(170deg,#00b6ff,#007fff)",
topStr: "",
rightStr: "calc(50% - 300rem)",
bottomStr: "calc(50% - 49rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(148deg,#76d2ff,#09baff 99%)",
topStr: "",
rightStr: "calc(50% - 453rem)",
bottomStr: "calc(50% - 170rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(136deg,#3e9eff 19%,#0062ff)",
topStr: "",
rightStr: "calc(50% - 657rem)",
bottomStr: "calc(50% - 133rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "160rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,rgba(0,79,255,.6),rgba(0,45,156,.6) 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "",
rightStr: "calc(50% - 800rem)",
bottomStr: "calc(50% - 345rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.5,
opacityAnimMap: new Map([
[0, 0.5],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
topStr: "",
rightStr: "calc(50% - 213rem)",
bottomStr: "calc(50% - 532rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
topStr: "",
rightStr: "calc(50% - 213rem)",
bottomStr: "calc(50% - 532rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
// logo 图标
{
widthStr: "190rem",
backgroundColorStr: "",
backgroundStr:
"url(" +
require("@/assets/images/siteArrange/logo-pingtai.png") +
") center no-repeat",
topStr: "calc(50% - 90rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 90rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
index: 99,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// logo 图标
{
widthStr: "180rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(0deg, #2254F3 0%, #15C5FF 100%)",
topStr: "calc(50% - 90rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 90rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// 平台设置字体
{
widthStr: "200rem",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(62%)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 98rem)",
className: "e-square",
parentClassName: "effect-box",
text: "平台设置",
fontSizeStr: "48rem",
fontColorStr: "#ffffff",
opacity: 1,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// e-icon-box 相关元素
// e-icon-box-bg
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon-box-bg",
parentClassName: "e-icon-box",
opacity: 0,
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
// e-icon-box 上部字体
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(-38%)",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "title_boxx",
parentClassName: "e-icon-box",
text: "平台设置",
opacity: 0,
fontColorStr: "#ffffff",
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(-16%)",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "desc_boxx",
parentClassName: "e-icon-box",
text: "运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。",
opacity: 0,
fontColorStr: "#ffffff",
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
];
this.platformPermission &&
this.platformPermission.forEach((v, i) => {
if (this.platformPermission.length > 4) {
let upObj = {
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon",
parentClassName: "e-icon-box",
opacity: 0,
opacityAnimMap: new Map([
[0.1, 0], // [帧,值]
[1, 1],
]),
...v,
transform: {
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: i == 4
? 450
: i == 5
? 300
: i == 6
? 150
: i == 7
? 0
: 450,
y: i == 4 ? -80 : 80,
z: 10,
},
scale: 0,
},
transformAnimMap: new Map([
[
0.1,
{
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: i == 4
? 450
: i == 5
? 300
: i == 6
? 150
: i == 7
? 0
: 450,
y: i >= 4 ? -80 : 80,
z: 10,
},
scale: 0,
},
],
[
i == 0
? 0.1
: i == 1
? 0.3
: i == 2
? 0.5
: i == 3
? 0.7
: i == 4
? 0.1
: i == 5
? 0.3
: i == 6
? 0.5
: i == 7
? 0.7
: 0.1,
{
translate3d: {
x:
i == 0
? 300
: i == 1
? 150
: i == 2
? 0
: i == 3
? -150
: i == 4
? 300
: i == 5
? 150
: i == 6
? 0
: i == 7
? -150
: 450,
y: i >= 4 ? -100 : 100,
z: 10,
},
scale: 0.5,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
};
anim_data.domArr.push(upObj);
} else {
let upObj = {
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon",
parentClassName: "e-icon-box",
opacity: 0,
opacityAnimMap: new Map([
[0.1, 0], // [帧,值]
[1, 1],
]),
...v,
transform: {
translate3d: {
x:
i == 0 ? 450 : i == 1 ? 300 : i == 2 ? 150 : i == 3 ? 0 : 0,
y: 80,
z: 10,
},
scale: 0,
},
transformAnimMap: new Map([
[
0.1,
{
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: 0,
y: 80,
z: 10,
},
scale: 0,
},
],
[
0.1,
{
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: 0,
y: 100,
z: 10,
},
scale: 0.5,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
};
anim_data.domArr.push(upObj);
}
});
new EffectManager();
},
// 跳转
handleClick(url) {
this.$router.push(url);
},
},
beforeDestroy() {
// 重置根字体大小
let root = document.documentElement;
root.style.fontSize = "16px";
},
};
</script>
<style lang="less" scoped>
@import "./index.css";
@headerH: 4.5rem;
.platform,
.content,
.modal {
width: 100%;
height: 100%;
background: url("~@/assets/images/siteArrange/bg-pintai.jpg") center no-repeat;
background-size: cover;
padding-top: @headerH;
.pla_cont {
width: 1210px;
height: 550px;
margin: 120px auto;
text-align: center;
h1 {
font-weight: 700;
font-size: 44px;
color: #ffffff;
padding-bottom: 35px;
}
.pla_modle {
width: 1200px;
height: 440px;
margin: auto;
// background-color: #ffffff;
background: rgba(5, 30, 75, 0.66);
display: flex;
flex-wrap: wrap;
.ant-card {
width: 100%;
height: 100%;
.ant-card-grid {
height: 218px;
cursor: pointer;
}
}
.pla_max {
cursor: pointer;
display: flex;
justify-content: center;
align-items: center;
padding: 10px;
.pla_min {
img {
width: 43px;
height: 43px;
}
.name {
font-weight: 700;
font-size: 20px;
color: #000333;
margin-top: 20px;
margin-bottom: 15px;
}
.remark {
font-weight: 400;
font-size: 14px;
color: #666666;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}
}
}
}
}
.ant-empty {
margin: auto;
}
}
.content {
background: rgba(3, 18, 51, 1);
padding-top: 0;
}
.modal {
padding-top: 0;
}
</style>
<template>
<div class="platform w-full h-auto">
<div
class="container-bg h-full w-full flex flex-col justify-center items-center"
>
<!-- <ParticleWavy class="wavy"></ParticleWavy> -->
<div class="title" ref="Title">平台设置</div>
<p class="des" ref="des">
运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。
</p>
<div ref="menuBox" class="menu-box">
<template v-for="(v, i) in platformPermission">
<div
:class="[
'menu-item',
'flex',
'flex-col',
'justify-center',
'items-center',
'item' + i,
]"
:ref="'item' + i"
:key="v.id"
v-if="v"
>
<div class="logo-box">
<img
class="logo cursor-pointer"
:src="
v.imgPath
? api + v.imgPath
: require('@/assets/images/platformSet/icon-aut.png')
"
@click="handleClick(v.url)"
/>
</div>
<p class="name cursor-default">{{ v.name }}</p>
</div>
<!-- 菜单不足8个时的填充 -->
<div
v-else
:class="[
'menu-item',
'menu-item-fill',
'flex',
'flex-col',
'justify-center',
'items-center',
'item' + i,
]"
:key="i"
:ref="'item' + i"
>
<div class="logo-box logo-box-2"></div>
<p class="name">RBAC用户-权限模型</p>
</div>
</template>
</div>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
import ParticleWavy from "@/components/ParticleWavy.vue";
import { gsap } from "gsap";
export default {
components: {
ParticleWavy,
},
data() {
return {
api: process.env.VUE_APP_API_IMG_URL,
platformPermission: [],
show: true,
};
},
created() {
this.getPlatformChildren();
},
mounted() {},
computed: {
...mapState("user", ["siteList", "userData"]),
},
methods: {
// 获取平台子菜单
getPlatformChildren() {
let { menuList } = this.userData;
let arr = new Array(8);
let platform = menuList.filter((v) => v.url === this.$route.path);
if (platform.length) {
let platformList = platform
.map((v) => {
if (v.childList.length) {
return v.childList;
} else {
return [];
}
})
.flat();
platformList.forEach((v, i) => {
arr[i] = v;
});
}
this.platformPermission = arr;
this.$nextTick(() => {
let tl = gsap.timeline();
tl.from(".container-bg", {
duration: 2,
background: "#000",
});
tl.from(
".title",
{
opacity: 0,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("Title"),
},
"<"
)
.from(
".des",
{
opacity: 0,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("des"),
},
"<"
)
.from(
".item0",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item0"),
},
"<"
)
.from(
".item1",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item1"),
},
"<"
)
.from(
".item2",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item2"),
},
"<"
)
.from(
".item3",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item3"),
},
"<"
)
.from(
".item4",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item4"),
},
"<"
)
.from(
".item5",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item5"),
},
"<"
)
.from(
".item6",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item6"),
},
"<"
)
.from(
".item7",
{
opacity: 0.7,
scale: 0,
duration: 2,
z: 10,
...this.getDomTran("item7"),
},
"<"
)
.from(
".name",
{
duration: 2,
opacity: 0,
},
"> -1"
)
.to(
".menu-box",
{
background: "rgba(5, 30, 75, 0.66)",
},
"> -1"
);
});
},
// 跳转
handleClick(url) {
if (!url) return;
this.$router.push(url);
},
// 获取dom动画偏移
getDomTran(ref) {
let dom;
if (this.$refs[ref] && Array.isArray(this.$refs[ref])) {
dom = this.$refs[ref][0].getBoundingClientRect();
} else {
dom = this.$refs[ref].getBoundingClientRect();
}
let menuBox = this.$refs.menuBox.getBoundingClientRect();
let x = menuBox.left + menuBox.width / 2 - dom.left - dom.width / 2;
let y = menuBox.top + menuBox.height / 2 - dom.top - dom.height / 2;
return {
x,
y,
};
},
},
beforeDestroy() {},
};
</script>
<style lang="less" scoped>
@headerH: 72px;
.platform {
width: 100%;
height: 100%;
background: url("~@/assets/images/siteArrange/bg-pintai.jpg") no-repeat center /
100% 100%;
.container-bg {
padding-top: @headerH;
color: #ffffff;
position: relative;
transform-style: preserve-3d;
perspective: 500px;
// background-color: #000;
.wavy {
position: absolute;
bottom: 0;
z-index: 0;
overflow: hidden;
}
}
.title {
margin-bottom: 30px;
font-size: 52px;
font-family: FZZhengHeiS-EB-GB;
}
.des {
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 500;
}
.menu-box {
width: 1000px;
height: 450px;
margin-top: 72px;
// background: rgba(5, 30, 75, 0.66);
border-radius: 12px;
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(2, 1fr);
}
.logo-box {
width: 66px;
height: 66px;
margin-bottom: 16px;
border-radius: 10px;
}
.logo {
width: inherit;
height: inherit;
object-fit: contain;
cursor: pointer;
}
.logo-box-2 {
background: rgba(0, 0, 0, 0.5);
}
.name {
font-size: 20px;
font-family: Source Han Sans CN;
font-weight: bold;
color: #ffffff;
}
.menu-item-fill {
.name {
visibility: hidden;
}
}
}
</style>
<template> <template>
<div class="platform w-full h-auto"> <div class="content" v-if="show">
<div <div class="modal">
class="container-bg h-full w-full flex flex-col justify-center items-center" <div class="effect-content">
> <div class="effect-box">
<!-- <ParticleWavy class="wavy"></ParticleWavy> --> <div class="e-icon-box"></div>
<div class="title" ref="Title">平台设置</div> </div>
<p class="des" ref="des"> </div>
运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。 </div>
</p> </div>
<div ref="menuBox" class="menu-box"> <div class="platform w-full h-auto" v-else>
<template v-for="(v, i) in platformPermission"> <div class="pla_cont">
<div <h1>平台设置</h1>
:class="[ <div class="pla_modle">
'menu-item', <a-card v-if="platformPermission.length">
'flex', <a-card-grid
'flex-col', style="width: 25%"
'justify-center', v-for="v in platformPermission"
'items-center',
'item' + i,
]"
:ref="'item' + i"
:key="v.id" :key="v.id"
v-if="v" @click="handleClick(v.url)"
> >
<div class="logo-box"> <div class="pla_max">
<img <div class="pla_min">
class="logo cursor-pointer" <img
:src=" :src="
v.imgPath v.imgPath
? api + v.imgPath ? api + v.imgPath
: require('@/assets/images/platformSet/icon-aut.png') : require('../../assets/images/RBAC.png')
" "
@click="handleClick(v.url)" alt
/> />
<p class="name">{{ v.name }}</p>
<p class="remark">{{ v.remark }}</p>
</div>
</div> </div>
<p class="name cursor-default">{{ v.name }}</p> </a-card-grid>
</div> </a-card>
<!-- 菜单不足8个时的填充 --> <a-empty
<div v-else
v-else :image="require('../../assets/images/empty.png')"
:class="[ :image-style="{
'menu-item', height: '60px',
'menu-item-fill', }"
'flex', >
'flex-col', <span slot="description">
'justify-center', <a href="#API">暂无权限</a>
'items-center', </span>
'item' + i, </a-empty>
]"
:key="i"
:ref="'item' + i"
>
<div class="logo-box logo-box-2"></div>
<p class="name">RBAC用户-权限模型</p>
</div>
</template>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { mapState } from "vuex"; import Storage from "@/utils/js/Storage";
import ParticleWavy from "@/components/ParticleWavy.vue"; // import "./index.css";
import { gsap } from "gsap"; import { mapState, mapMutations, mapGetters } from "vuex";
let _this = null;
const anim_data = {
domArr: [],
// [
// // 杂乱的正方形
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(-33deg,#8f35ff,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%),linear-gradient(116deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
// topStr: "calc(50% - 421rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 756rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0.2, 0.4], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "80rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(133deg,rgba(255,186,0,0),rgba(255,207,0,.6) 68%),linear-gradient(170deg,#ffc400,#ff9200),linear-gradient(170deg,#ffc400,#ff9200)",
// topStr: "calc(50% - 192rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 487rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// opacityAnimMap: new Map([]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "#cc7201",
// backgroundImageStr: "",
// topStr: "calc(50% - 141rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 624rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.8,
// opacityAnimMap: new Map([
// [0, 0.8],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "40rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#3e9eff,#0062ff)",
// topStr: "calc(50% - 67rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 316rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.75,
// opacityAnimMap: new Map([
// [0, 0.75],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "46rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
// topStr: "calc(50% - 28rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 259rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "72rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 175rem)",
// leftStr: "calc(50% - 579rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0, 0.4],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 412rem)",
// leftStr: "calc(50% - 701rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
// topStr: "calc(50% - 3rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 243rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(-27deg,rgba(143,53,255,.8) 11%,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%)",
// topStr: "calc(50% - 473rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 154rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "46rem",
// backgroundColorStr: "#ffa800",
// backgroundImageStr: "",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 98rem)",
// leftStr: "calc(50% - 362rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(180deg,#004fff,rgba(0,45,156,0) 70%)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 498rem)",
// leftStr: "calc(50% - 165rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "40rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%)",
// topStr: "",
// rightStr: "",
// bottomStr: "calc(50% - 352rem)",
// leftStr: "calc(50% - 26rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.35,
// opacityAnimMap: new Map([
// [0, 0.35],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%),-webkit-linear-gradient(334deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
// topStr: "calc(50% - 395rem)",
// rightStr: "calc(50% - 102rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.4,
// opacityAnimMap: new Map([
// [0, 0.4],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "calc(50% - 206rem)",
// rightStr: "calc(50% - 38rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.3,
// opacityAnimMap: new Map([
// [0, 0.3],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "130rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "calc(50% - 263rem)",
// rightStr: "calc(50% - 704rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.67,
// opacityAnimMap: new Map([
// [0, 0.67],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(128deg,#00ebb6,#00ba46 69%)",
// topStr: "calc(50% - 226rem)",
// rightStr: "calc(50% - 505rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.95,
// opacityAnimMap: new Map([
// [0, 0.95],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#ffc400,rgba(255,207,0,.6))",
// topStr: "calc(50% - 52rem)",
// rightStr: "calc(50% - 218rem)",
// bottomStr: "",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "24rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(170deg,#00b6ff,#007fff)",
// topStr: "",
// rightStr: "calc(50% - 300rem)",
// bottomStr: "calc(50% - 49rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "64rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(148deg,#76d2ff,#09baff 99%)",
// topStr: "",
// rightStr: "calc(50% - 453rem)",
// bottomStr: "calc(50% - 170rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(136deg,#3e9eff 19%,#0062ff)",
// topStr: "",
// rightStr: "calc(50% - 657rem)",
// bottomStr: "calc(50% - 133rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.96,
// opacityAnimMap: new Map([
// [0, 0.96],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "160rem",
// backgroundColorStr: "",
// backgroundImageStr:
// "linear-gradient(147deg,rgba(0,79,255,.6),rgba(0,45,156,.6) 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
// topStr: "",
// rightStr: "calc(50% - 800rem)",
// bottomStr: "calc(50% - 345rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.5,
// opacityAnimMap: new Map([
// [0, 0.5],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
// topStr: "",
// rightStr: "calc(50% - 213rem)",
// bottomStr: "calc(50% - 532rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// {
// widthStr: "96rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
// topStr: "",
// rightStr: "calc(50% - 213rem)",
// bottomStr: "calc(50% - 532rem)",
// leftStr: "",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 0.2,
// opacityAnimMap: new Map([
// [0, 0.2],
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 800 },
// },
// ],
// ]),
// },
// // logo 图标
// {
// widthStr: "190rem",
// backgroundColorStr: "",
// backgroundStr:
// "url(" +
// require("@/assets/images/siteArrange/logo-pingtai.png") +
// ") center no-repeat",
// topStr: "calc(50% - 90rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 90rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// index: 99,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // logo 图标
// {
// widthStr: "180rem",
// backgroundColorStr: "",
// backgroundImageStr: "linear-gradient(0deg, #2254F3 0%, #15C5FF 100%)",
// topStr: "calc(50% - 90rem)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 90rem)",
// className: "e-square",
// parentClassName: "effect-box",
// opacity: 1,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // 平台设置字体
// {
// widthStr: "200rem",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(62%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "calc(50% - 98rem)",
// className: "e-square",
// parentClassName: "effect-box",
// text: "平台设置",
// fontSizeStr: "48rem",
// fontColorStr: "#ffffff",
// opacity: 1,
// opacityAnimMap: new Map([
// [0, 1], // [帧,值]
// [0.6, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// transformAnimMap: new Map([
// [
// 0,
// {
// translate3d: { x: 0, y: 0, z: 0 },
// scale: 1,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: -1300, z: 800 },
// scale: 1.5,
// },
// ],
// ]),
// },
// // e-icon-box 相关元素
// // e-icon-box-bg
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "e-icon-box-bg",
// parentClassName: "e-icon-box",
// opacity: 0,
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// // e-icon-box 上部字体
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(-38%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "title_boxx",
// parentClassName: "e-icon-box",
// text: "平台设置",
// opacity: 0,
// fontColorStr: "#ffffff",
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// {
// widthStr: "",
// backgroundColorStr: "",
// backgroundImageStr: "",
// topStr: "calc(-16%)",
// rightStr: "",
// bottomStr: "",
// leftStr: "",
// className: "desc_boxx",
// parentClassName: "e-icon-box",
// text: "运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。",
// opacity: 0,
// fontColorStr: "#ffffff",
// opacityAnimMap: new Map([
// [0.6, 0], // [帧,值]
// [1, 1],
// ]),
// transform: {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// transformAnimMap: new Map([
// [
// 0.6,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 0.8,
// },
// ],
// [
// 1,
// {
// translate3d: { x: 0, y: 0, z: 10 },
// scale: 1,
// },
// ],
// ]),
// },
// // e-icon 上行
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 450, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 300, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 300, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: 300, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 150, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 150, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: 150, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.7, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 0, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 0, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.7,
// // {
// // translate3d: { x: 0, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -150, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -150, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: -150, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -300, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -300, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: -300, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -450, y: 80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: 80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: 100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // e-icon 下行
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 450, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: 450, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 300, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 300, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: 300, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 150, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 150, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: 150, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.7, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: 0, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: 0, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.7,
// // {
// // translate3d: { x: 0, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.5, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -150, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -150, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.5,
// // {
// // translate3d: { x: -150, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.3, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -300, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -300, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.3,
// // {
// // translate3d: { x: -300, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// // {
// // widthStr: "",
// // backgroundColorStr: "",
// // backgroundImageStr: "",
// // topStr: "",
// // rightStr: "",
// // bottomStr: "",
// // leftStr: "",
// // className: "e-icon",
// // parentClassName: "e-icon-box",
// // opacity: 0,
// // opacityAnimMap: new Map([
// // [0.1, 0], // [帧,值]
// // [1, 1],
// // ]),
// // transform: {
// // translate3d: { x: -450, y: -80, z: 10 },
// // scale: 0,
// // },
// // transformAnimMap: new Map([
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: -80, z: 10 },
// // scale: 0,
// // },
// // ],
// // [
// // 0.1,
// // {
// // translate3d: { x: -450, y: -100, z: 10 },
// // scale: 0.5,
// // },
// // ],
// // [
// // 1,
// // {
// // translate3d: { x: 0, y: 0, z: 10 },
// // scale: 1,
// // },
// // ],
// // ]),
// // },
// ],
};
// 特效管理
class EffectManager {
constructor(data = anim_data) {
data.domArr.forEach((item) => {
const entity = new Entity();
// 添加形状组件
entity.addComp(
new ShapeComp({
shapeAtt: item,
})
);
// 添加动画组件
entity.addComp(
new ShapeAnimComp({
opacityAnimMap: item.opacityAnimMap,
transformAnimMap: item.transformAnimMap,
})
);
// 添加滚动事件组件
entity.addComp(
new RollEventComp({
cb: function (scrollPos) {
this.getComp("ShapeAnimComp").changeOpacity(
scrollPos,
this.getComp("ShapeComp")
);
this.getComp("ShapeAnimComp").changeTransform(
scrollPos,
this.getComp("ShapeComp")
);
}.bind(entity),
})
);
});
}
}
// 单体
class Entity {
constructor() {
this._compMap = new Map();
}
addComp(comp) {
this._compMap.set(comp.name, comp);
}
getComp(compName) {
return this._compMap.get(compName);
}
}
// 形状组件
class ShapeComp {
constructor(data) {
this.name = "ShapeComp";
this._shapeDom = document.createElement("div");
this._shapeDom.classList.add(data.shapeAtt.className);
this._shapeDom.style.width = data.shapeAtt.widthStr;
this._shapeDom.style.height = data.shapeAtt.widthStr;
data.shapeAtt.backgroundImageStr
? (this._shapeDom.style.backgroundImage =
data.shapeAtt.backgroundImageStr)
: data.shapeAtt.backgroundStr
? (this._shapeDom.style.background = data.shapeAtt.backgroundStr)
: "";
this._shapeDom.style.top = data.shapeAtt.topStr;
this._shapeDom.style.right = data.shapeAtt.rightStr;
this._shapeDom.style.bottom = data.shapeAtt.bottomStr;
this._shapeDom.style.left = data.shapeAtt.leftStr;
this._shapeDom.style.backgroundColor = data.shapeAtt.backgroundColorStr;
data.shapeAtt.fontColorStr
? (this._shapeDom.style.color = data.shapeAtt.fontColorStr)
: "";
data.shapeAtt.fontSizeStr
? (this._shapeDom.style.fontSize = data.shapeAtt.fontSizeStr)
: "";
data.shapeAtt.text ? (this._shapeDom.innerHTML = data.shapeAtt.text) : "";
data.shapeAtt.index
? (this._shapeDom.style.zIndex = data.shapeAtt.index)
: "";
if (data.shapeAtt.url) {
let aE = document.createElement("a");
let imgDom = document.createElement("div");
imgDom.style.width = "66rem";
imgDom.style.height = "66rem";
imgDom.style.background =
"url(" + _this.api + data.shapeAtt.imgPath + ") no-repeat";
imgDom.style.backgroundSize = "100%";
let txtDom = document.createElement("span");
txtDom.innerHTML = data.shapeAtt.name;
aE.setAttribute("href", "#" + data.shapeAtt.url);
aE.appendChild(imgDom);
aE.appendChild(txtDom);
this._shapeDom.appendChild(aE);
}
document
.getElementsByClassName(data.shapeAtt.parentClassName)[0]
.appendChild(this._shapeDom);
this._opacity = null;
this._transform = null;
this.opacity = data.shapeAtt.opacity;
this.transform = data.shapeAtt.transform;
}
set opacity(value) {
if (value !== this._opacity) {
this._shapeDom.style.opacity = value + "";
}
this._opacity = value;
}
get opacity() {
return this._opacity;
}
set transform(value) {
let transformStr = "";
if (value.translate3d !== undefined) {
transformStr = `translate3d(${value.translate3d.x}rem, ${value.translate3d.y}rem, ${value.translate3d.z}rem)`;
}
if (value.scale !== undefined) {
transformStr += `scale(${value.scale})`;
}
this._shapeDom.style.transform = transformStr;
this._transform = value;
}
get transform() {
return this._transform;
}
}
// 动画组件
class ShapeAnimComp {
constructor(data) {
this.name = "ShapeAnimComp";
this._opacityAnimMap = data.opacityAnimMap;
this._transformAnimMap = data.transformAnimMap;
}
// 返回根据滚动改变的状态值
_getStateValue(scrollPos, beginPos, endPos, beginValue, endValue) {
if (beginValue === endValue) {
return beginValue;
}
const value =
((endValue - beginValue) * (scrollPos - beginPos)) / (endPos - beginPos) +
beginValue;
return Number(value.toFixed(3));
}
// 根据滚动值改变透明度
changeOpacity(scrollPos, shapeComp) {
if (this._opacityAnimMap.size === 0) {
return;
}
const keyArr = [...this._opacityAnimMap.keys()].sort((a, b) => a - b);
const beginPos = keyArr.findLast((item) => item <= scrollPos);
let beginValue = this._opacityAnimMap.get(beginPos);
const endPos = keyArr.find((item) => item >= scrollPos);
let endValue = this._opacityAnimMap.get(endPos);
if (beginValue === undefined && endValue !== undefined) {
beginValue = endValue;
} else if (beginValue !== undefined && endValue === undefined) {
endValue = beginValue;
} else if (beginValue === undefined && endValue === undefined) {
return;
}
const opacity = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue,
endValue
);
shapeComp.opacity = opacity;
}
// 根据滚动值改变 transform
changeTransform(scrollPos, shapeComp) {
if (this._transformAnimMap.size === 0) {
return;
}
let transform = {};
const keyArr = [...this._transformAnimMap.keys()].sort((a, b) => a - b);
const beginPos = keyArr.findLast((item) => item <= scrollPos);
let beginValue = this._transformAnimMap.get(beginPos);
const endPos = keyArr.find((item) => item >= scrollPos);
let endValue = this._transformAnimMap.get(endPos);
if (beginValue === undefined && endValue !== undefined) {
beginValue = endValue;
} else if (beginValue !== undefined && endValue === undefined) {
endValue = beginValue;
} else if (beginValue === undefined && endValue === undefined) {
return;
}
// translate3d
if (beginValue.translate3d !== undefined) {
const translate3dx = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.x,
endValue.translate3d.x
);
const translate3dy = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.y,
endValue.translate3d.y
);
const translate3dz = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.translate3d.z,
endValue.translate3d.z
);
transform.translate3d = {
x: translate3dx,
y: translate3dy,
z: translate3dz,
};
}
// scale
if (beginValue.scale !== undefined) {
const scale = this._getStateValue(
scrollPos,
beginPos,
endPos,
beginValue.scale,
endValue.scale
);
transform.scale = scale;
}
shapeComp.transform = transform;
}
}
// 滚动事件组件
class RollEventComp {
constructor(data) {
this.name = "RollEventComp";
let index = 0;
// let set = setInterval(function () {
// index += 0.004;
// data.cb(index);
// if (index >= 0.43) {
// document.getElementsByClassName("effect-box")[0]
// ? (document.getElementsByClassName(
// "effect-box"
// )[0].style.backgroundColor = `rgba(3, 18, 51, ${
// 0 ? 0 : 0.5 - index
// })`)
// : "";
// }
// if (index > 1) {
// clearInterval(set);
// }
// });
function fn() {
index += 0.018;
data.cb(index);
if (index >= 0.43) {
document.getElementsByClassName("effect-box")[0]
? (document.getElementsByClassName(
"effect-box"
)[0].style.backgroundColor = `rgba(3, 18, 51, ${
0 ? 0 : 0.5 - index
})`)
: "";
}
if (index < 1.1) {
window.requestAnimationFrame(fn);
}
}
window.requestAnimationFrame(fn);
// window.addEventListener("scroll", (event) => {
// const scrollTop = document.documentElement.scrollTop;
// const scrollHeight = document.documentElement.scrollHeight;
// const clientHeight = document.documentElement.clientHeight;
// let scrollPos = 0;
// if (scrollTop + clientHeight >= scrollHeight - 5) {
// scrollPos = 1;
// } else if (scrollTop === 0) {
// scrollPos = 0;
// } else {
// scrollPos = Number(
// (scrollTop / (scrollHeight - clientHeight)).toFixed(3)
// );
// }
// console.log(scrollPos, "###########");
// data.cb(scrollPos);
// });
}
}
export default { export default {
components: {
ParticleWavy,
},
data() { data() {
return { return {
api: process.env.VUE_APP_API_IMG_URL, api: process.env.VUE_APP_API_IMG_URL,
...@@ -76,9 +1999,16 @@ export default { ...@@ -76,9 +1999,16 @@ export default {
}; };
}, },
created() { created() {
this.getPlatformChildren(); this.$nextTick(() => {
this.getPlatformChildren();
});
},
mounted() {
_this = this;
// 重置根字体大小
let root = document.documentElement;
root.style.fontSize = "var(--base-font-size)";
}, },
mounted() {},
computed: { computed: {
...mapState("user", ["siteList", "userData"]), ...mapState("user", ["siteList", "userData"]),
}, },
...@@ -86,10 +2016,9 @@ export default { ...@@ -86,10 +2016,9 @@ export default {
// 获取平台子菜单 // 获取平台子菜单
getPlatformChildren() { getPlatformChildren() {
let { menuList } = this.userData; let { menuList } = this.userData;
let arr = new Array(8); let platform = menuList.filter((v) => v.name === "平台设置");
let platform = menuList.filter((v) => v.url === this.$route.path);
if (platform.length) { if (platform.length) {
let platformList = platform this.platformPermission = platform
.map((v) => { .map((v) => {
if (v.childList.length) { if (v.childList.length) {
return v.childList; return v.childList;
...@@ -98,236 +2027,1319 @@ export default { ...@@ -98,236 +2027,1319 @@ export default {
} }
}) })
.flat(); .flat();
platformList.forEach((v, i) => {
arr[i] = v;
});
} }
this.platformPermission = arr; anim_data.domArr = [
this.$nextTick(() => { // 杂乱的正方形
let tl = gsap.timeline(); {
tl.from(".container-bg", { widthStr: "160rem",
duration: 2, backgroundColorStr: "",
background: "#000", backgroundImageStr:
}); "linear-gradient(-33deg,#8f35ff,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%),linear-gradient(116deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
tl.from( topStr: "calc(50% - 421rem)",
".title", rightStr: "",
{ bottomStr: "",
opacity: 0, leftStr: "calc(50% - 756rem)",
scale: 0, className: "e-square",
duration: 2, parentClassName: "effect-box",
z: 10, opacity: 0.4,
...this.getDomTran("Title"), opacityAnimMap: new Map([
[0.2, 0.4], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "80rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(133deg,rgba(255,186,0,0),rgba(255,207,0,.6) 68%),linear-gradient(170deg,#ffc400,#ff9200),linear-gradient(170deg,#ffc400,#ff9200)",
topStr: "calc(50% - 192rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 487rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
opacityAnimMap: new Map([]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "#cc7201",
backgroundImageStr: "",
topStr: "calc(50% - 141rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 624rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.8,
opacityAnimMap: new Map([
[0, 0.8],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "40rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(170deg,#3e9eff,#0062ff)",
topStr: "calc(50% - 67rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 316rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.75,
opacityAnimMap: new Map([
[0, 0.75],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "46rem",
backgroundColorStr: "",
backgroundImageStr:
"radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
topStr: "calc(50% - 28rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 259rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "72rem",
backgroundColorStr: "",
backgroundImageStr:
"radial-gradient(77deg,#ff8300 0,#ff9200 54%,rgba(255,146,0,0) 128%),linear-gradient(77deg,#ffb400,#ff9200 25%,#ffdf2f 68%,#ff8e00)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 175rem)",
leftStr: "calc(50% - 579rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.4,
opacityAnimMap: new Map([
[0, 0.4],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "160rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 412rem)",
leftStr: "calc(50% - 701rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(220deg,#e58dff,#8f35ff 67%,rgba(143,53,255,0)),radial-gradient(circle at 1.2222% -87%,rgba(0,45,156,.75) 0,#002d9c 171%,rgba(0,45,156,0) 278%),linear-gradient(137deg,rgba(0,137,255,.3),rgba(3,79,255,.24))",
topStr: "calc(50% - 3rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 243rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-27deg,rgba(143,53,255,.8) 11%,rgba(143,53,255,0)),radial-gradient(circle at 62% -28%,rgba(0,45,156,.75) 0,#002d9c 68%,rgba(0,45,156,0) 111%)",
topStr: "calc(50% - 473rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 154rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "46rem",
backgroundColorStr: "#ffa800",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 98rem)",
leftStr: "calc(50% - 362rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(180deg,#004fff,rgba(0,45,156,0) 70%)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 498rem)",
leftStr: "calc(50% - 165rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "40rem",
backgroundColorStr: "",
backgroundImageStr:
"-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%)",
topStr: "",
rightStr: "",
bottomStr: "calc(50% - 352rem)",
leftStr: "calc(50% - 26rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.35,
opacityAnimMap: new Map([
[0, 0.35],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr:
"-webkit-radial-gradient(top,rgba(0,45,156,.75) 0,#002d9c 92%,rgba(0,45,156,0) 166%),-webkit-linear-gradient(334deg,rgba(0,137,255,.2) 1%,rgba(0,186,255,.04) 38%,rgba(68,149,255,.08) 68%,rgba(3,79,255,.16) 88%)",
topStr: "calc(50% - 395rem)",
rightStr: "calc(50% - 102rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.4,
opacityAnimMap: new Map([
[0, 0.4],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "calc(50% - 206rem)",
rightStr: "calc(50% - 38rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.3,
opacityAnimMap: new Map([
[0, 0.3],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "130rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,#004fff,#002d9c 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "calc(50% - 263rem)",
rightStr: "calc(50% - 704rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.67,
opacityAnimMap: new Map([
[0, 0.67],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(128deg,#00ebb6,#00ba46 69%)",
topStr: "calc(50% - 226rem)",
rightStr: "calc(50% - 505rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.95,
opacityAnimMap: new Map([
[0, 0.95],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(170deg,#ffc400,rgba(255,207,0,.6))",
topStr: "calc(50% - 52rem)",
rightStr: "calc(50% - 218rem)",
bottomStr: "",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "24rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(170deg,#00b6ff,#007fff)",
topStr: "",
rightStr: "calc(50% - 300rem)",
bottomStr: "calc(50% - 49rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "64rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(148deg,#76d2ff,#09baff 99%)",
topStr: "",
rightStr: "calc(50% - 453rem)",
bottomStr: "calc(50% - 170rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(136deg,#3e9eff 19%,#0062ff)",
topStr: "",
rightStr: "calc(50% - 657rem)",
bottomStr: "calc(50% - 133rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.96,
opacityAnimMap: new Map([
[0, 0.96],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "160rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(147deg,rgba(0,79,255,.6),rgba(0,45,156,.6) 82%),linear-gradient(153deg,#007fff 5%,#0063ff 95%)",
topStr: "",
rightStr: "calc(50% - 800rem)",
bottomStr: "calc(50% - 345rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.5,
opacityAnimMap: new Map([
[0, 0.5],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
}, },
"<" transformAnimMap: new Map([
) [
.from( 0,
".des", {
{ translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
topStr: "",
rightStr: "calc(50% - 213rem)",
bottomStr: "calc(50% - 532rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
{
widthStr: "96rem",
backgroundColorStr: "",
backgroundImageStr:
"linear-gradient(-2deg,rgba(0,45,156,.75),#002d9c)",
topStr: "",
rightStr: "calc(50% - 213rem)",
bottomStr: "calc(50% - 532rem)",
leftStr: "",
className: "e-square",
parentClassName: "effect-box",
opacity: 0.2,
opacityAnimMap: new Map([
[0, 0.2],
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 800 },
},
],
]),
},
// logo 图标
{
widthStr: "190rem",
backgroundColorStr: "",
backgroundStr:
"url(" +
require("@/assets/images/siteArrange/logo-pingtai.png") +
") center no-repeat",
topStr: "calc(50% - 90rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 90rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
index: 99,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// logo 图标
{
widthStr: "180rem",
backgroundColorStr: "",
backgroundImageStr: "linear-gradient(0deg, #2254F3 0%, #15C5FF 100%)",
topStr: "calc(50% - 90rem)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 90rem)",
className: "e-square",
parentClassName: "effect-box",
opacity: 1,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// 平台设置字体
{
widthStr: "200rem",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(62%)",
rightStr: "",
bottomStr: "",
leftStr: "calc(50% - 98rem)",
className: "e-square",
parentClassName: "effect-box",
text: "平台设置",
fontSizeStr: "48rem",
fontColorStr: "#ffffff",
opacity: 1,
opacityAnimMap: new Map([
[0, 1], // [帧,值]
[0.6, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
transformAnimMap: new Map([
[
0,
{
translate3d: { x: 0, y: 0, z: 0 },
scale: 1,
},
],
[
1,
{
translate3d: { x: 0, y: -1300, z: 800 },
scale: 1.5,
},
],
]),
},
// e-icon-box 相关元素
// e-icon-box-bg
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon-box-bg",
parentClassName: "e-icon-box",
opacity: 0,
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
// e-icon-box 上部字体
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(-38%)",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "title_boxx",
parentClassName: "e-icon-box",
text: "平台设置",
opacity: 0,
fontColorStr: "#ffffff",
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
{
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "calc(-16%)",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "desc_boxx",
parentClassName: "e-icon-box",
text: "运用以人工智能为代表的新技术,驱动政务服务模式创新,为人民提供更加智慧化、人性化的政务服务。",
opacity: 0,
fontColorStr: "#ffffff",
opacityAnimMap: new Map([
[0.6, 0], // [帧,值]
[1, 1],
]),
transform: {
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
transformAnimMap: new Map([
[
0.6,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 0.8,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
},
];
this.platformPermission &&
this.platformPermission.forEach((v, i) => {
if (this.platformPermission.length > 4) {
let upObj = {
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon",
parentClassName: "e-icon-box",
opacity: 0, opacity: 0,
scale: 0, opacityAnimMap: new Map([
duration: 2, [0.1, 0], // [帧,值]
z: 10, [1, 1],
...this.getDomTran("des"), ]),
}, ...v,
"<" transform: {
) translate3d: {
.from( x:
".item0", i == 0
{ ? 450
opacity: 0.7, : i == 1
scale: 0, ? 300
duration: 2, : i == 2
z: 10, ? 150
...this.getDomTran("item0"), : i == 3
}, ? 0
"<" : i == 4
) ? 450
.from( : i == 5
".item1", ? 300
{ : i == 6
opacity: 0.7, ? 150
scale: 0, : i == 7
duration: 2, ? 0
z: 10, : 450,
...this.getDomTran("item1"), y: i == 4 ? -80 : 80,
}, z: 10,
"<" },
) scale: 0,
.from( },
".item2", transformAnimMap: new Map([
{ [
opacity: 0.7, 0.1,
scale: 0, {
duration: 2, translate3d: {
z: 10, x:
...this.getDomTran("item2"), i == 0
}, ? 450
"<" : i == 1
) ? 300
.from( : i == 2
".item3", ? 150
{ : i == 3
opacity: 0.7, ? 0
scale: 0, : i == 4
duration: 2, ? 450
z: 10, : i == 5
...this.getDomTran("item3"), ? 300
}, : i == 6
"<" ? 150
) : i == 7
.from( ? 0
".item4", : 450,
{ y: i >= 4 ? -80 : 80,
opacity: 0.7, z: 10,
scale: 0, },
duration: 2, scale: 0,
z: 10, },
...this.getDomTran("item4"), ],
}, [
"<" i == 0
) ? 0.1
.from( : i == 1
".item5", ? 0.3
{ : i == 2
opacity: 0.7, ? 0.5
scale: 0, : i == 3
duration: 2, ? 0.7
z: 10, : i == 4
...this.getDomTran("item5"), ? 0.1
}, : i == 5
"<" ? 0.3
) : i == 6
.from( ? 0.5
".item6", : i == 7
{ ? 0.7
opacity: 0.7, : 0.1,
scale: 0, {
duration: 2, translate3d: {
z: 10, x:
...this.getDomTran("item6"), i == 0
}, ? 300
"<" : i == 1
) ? 150
.from( : i == 2
".item7", ? 0
{ : i == 3
opacity: 0.7, ? -150
scale: 0, : i == 4
duration: 2, ? 300
z: 10, : i == 5
...this.getDomTran("item7"), ? 150
}, : i == 6
"<" ? 0
) : i == 7
.from( ? -150
".name", : 450,
{ y: i >= 4 ? -100 : 100,
duration: 2, z: 10,
},
scale: 0.5,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
};
anim_data.domArr.push(upObj);
} else {
let upObj = {
widthStr: "",
backgroundColorStr: "",
backgroundImageStr: "",
topStr: "",
rightStr: "",
bottomStr: "",
leftStr: "",
className: "e-icon",
parentClassName: "e-icon-box",
opacity: 0, opacity: 0,
}, opacityAnimMap: new Map([
"> -1" [0.1, 0], // [帧,值]
) [1, 1],
.to( ]),
".menu-box", ...v,
{ transform: {
background: "rgba(5, 30, 75, 0.66)", translate3d: {
}, x:
"> -1" i == 0 ? 450 : i == 1 ? 300 : i == 2 ? 150 : i == 3 ? 0 : 0,
); y: 80,
}); z: 10,
},
scale: 0,
},
transformAnimMap: new Map([
[
0.1,
{
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: 0,
y: 80,
z: 10,
},
scale: 0,
},
],
[
0.1,
{
translate3d: {
x:
i == 0
? 450
: i == 1
? 300
: i == 2
? 150
: i == 3
? 0
: 0,
y: 100,
z: 10,
},
scale: 0.5,
},
],
[
1,
{
translate3d: { x: 0, y: 0, z: 10 },
scale: 1,
},
],
]),
};
anim_data.domArr.push(upObj);
}
});
new EffectManager();
}, },
// 跳转 // 跳转
handleClick(url) { handleClick(url) {
if (!url) return;
this.$router.push(url); this.$router.push(url);
}, },
// 获取dom动画偏移
getDomTran(ref) {
let dom;
if (this.$refs[ref] && Array.isArray(this.$refs[ref])) {
dom = this.$refs[ref][0].getBoundingClientRect();
} else {
dom = this.$refs[ref].getBoundingClientRect();
}
let menuBox = this.$refs.menuBox.getBoundingClientRect();
let x = menuBox.left + menuBox.width / 2 - dom.left - dom.width / 2;
let y = menuBox.top + menuBox.height / 2 - dom.top - dom.height / 2;
return {
x,
y,
};
},
}, },
beforeDestroy() {}, beforeDestroy() {
// 重置根字体大小
let root = document.documentElement;
root.style.fontSize = "16px";
},
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@headerH: 72px; @import "./index.css";
.platform { @headerH: 4.5rem;
.platform,
.content,
.modal {
width: 100%; width: 100%;
height: 100%; height: 100%;
background: url("~@/assets/images/siteArrange/bg-pintai.jpg") no-repeat center / background: url("~@/assets/images/siteArrange/bg-pintai.jpg") center no-repeat;
100% 100%; background-size: cover;
.container-bg { padding-top: @headerH;
padding-top: @headerH;
color: #ffffff; .pla_cont {
position: relative; width: 1210px;
transform-style: preserve-3d; height: 550px;
perspective: 500px; margin: 120px auto;
// background-color: #000; text-align: center;
.wavy {
position: absolute; h1 {
bottom: 0; font-weight: 700;
z-index: 0; font-size: 44px;
overflow: hidden; color: #ffffff;
padding-bottom: 35px;
} }
}
.title { .pla_modle {
margin-bottom: 30px; width: 1200px;
font-size: 52px; height: 440px;
font-family: FZZhengHeiS-EB-GB; margin: auto;
} // background-color: #ffffff;
.des { background: rgba(5, 30, 75, 0.66);
font-size: 22px; display: flex;
font-family: Source Han Sans CN; flex-wrap: wrap;
font-weight: 500; .ant-card {
} width: 100%;
.menu-box { height: 100%;
width: 1000px; .ant-card-grid {
height: 450px; height: 218px;
margin-top: 72px; cursor: pointer;
// background: rgba(5, 30, 75, 0.66); }
border-radius: 12px; }
display: grid;
grid-template-columns: repeat(4, 1fr); .pla_max {
grid-template-rows: repeat(2, 1fr); cursor: pointer;
} display: flex;
.logo-box { justify-content: center;
width: 66px; align-items: center;
height: 66px; padding: 10px;
margin-bottom: 16px; .pla_min {
border-radius: 10px; img {
} width: 43px;
.logo { height: 43px;
width: inherit; }
height: inherit;
object-fit: contain; .name {
cursor: pointer; font-weight: 700;
} font-size: 20px;
.logo-box-2 { color: #000333;
background: rgba(0, 0, 0, 0.5); margin-top: 20px;
} margin-bottom: 15px;
.name { }
font-size: 20px; .remark {
font-family: Source Han Sans CN; font-weight: 400;
font-weight: bold; font-size: 14px;
color: #ffffff; color: #666666;
} display: -webkit-box;
.menu-item-fill { -webkit-box-orient: vertical;
.name { -webkit-line-clamp: 2;
visibility: hidden; overflow: hidden;
}
}
}
} }
} }
.ant-empty {
margin: auto;
}
}
.content {
background: rgba(3, 18, 51, 1);
padding-top: 0;
}
.modal {
padding-top: 0;
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment