|
@@ -1,179 +1,233 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div id="Solutions">
|
|
<div id="Solutions">
|
|
|
- <div class="container text-center">
|
|
|
|
|
- <h3>解决方案</h3>
|
|
|
|
|
- <p style="color:#b2b2b2">无人机行业应用解决方案</p>
|
|
|
|
|
|
|
+ <!-- Banner -->
|
|
|
|
|
+ <div class="banner container-fuild text-center">
|
|
|
|
|
+ <h1>解决方案</h1>
|
|
|
|
|
+ <p>无人机行业应用解决方案</p>
|
|
|
</div>
|
|
</div>
|
|
|
- <div class="container">
|
|
|
|
|
- <ul class="accordion-container col-md-12 hidden-xs hidden-sm">
|
|
|
|
|
- <li class="accordion-item" v-for="(item, index) in largeList" :key="index"
|
|
|
|
|
- :style="{backgroundImage: 'url(' + item.backgroundImage + ')'}" @click="AccordingClick(item.id)">
|
|
|
|
|
- <h5 class="container text-left"> {{ item.title }}
|
|
|
|
|
- </h5>
|
|
|
|
|
- <p class="container text-left" > {{ item.sm_title }}
|
|
|
|
|
- </p>
|
|
|
|
|
- </li>
|
|
|
|
|
- </ul>
|
|
|
|
|
- <!--移动端-->
|
|
|
|
|
- <VerticalList :items="smallList" @item-click="AccordingClick"/>
|
|
|
|
|
|
|
|
|
|
|
|
+ <!-- 解决方案列表 -->
|
|
|
|
|
+ <div class="l-container l-section">
|
|
|
|
|
+ <div class="section-header">
|
|
|
|
|
+ <div class="section-tag">
|
|
|
|
|
+ <span class="tag-dot"></span>
|
|
|
|
|
+ <span>SOLUTIONS</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <h2 class="section-title">我们的解决方案</h2>
|
|
|
|
|
+ <p class="section-subtitle">Professional Solutions</p>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <div class="solutions-grid">
|
|
|
|
|
+ <router-link
|
|
|
|
|
+ v-for="(item, index) in solutionsList"
|
|
|
|
|
+ :key="index"
|
|
|
|
|
+ :to="item.path"
|
|
|
|
|
+ class="solution-card"
|
|
|
|
|
+ >
|
|
|
|
|
+ <div class="solution-image">
|
|
|
|
|
+ <img :src="item.image" :alt="item.title">
|
|
|
|
|
+ <div class="solution-overlay">
|
|
|
|
|
+ <i class="solution-icon glyphicon glyphicon-link"></i>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="solution-content">
|
|
|
|
|
+ <h3>{{ item.title }}</h3>
|
|
|
|
|
+ <p>{{ item.description }}</p>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </router-link>
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
+
|
|
|
<script>
|
|
<script>
|
|
|
import {WOW} from 'wowjs';
|
|
import {WOW} from 'wowjs';
|
|
|
-import VerticalList from '../../components/VerticalList.vue'
|
|
|
|
|
-import Surveying from './Surveying.vue'
|
|
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
|
name: 'Solutions',
|
|
name: 'Solutions',
|
|
|
- components: {VerticalList},
|
|
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
- // 移动端显示
|
|
|
|
|
- smallList: [
|
|
|
|
|
|
|
+ solutionsList: [
|
|
|
{
|
|
{
|
|
|
- id: 'section-1',
|
|
|
|
|
|
|
+ path: '/solutions/surveying',
|
|
|
title: '基础测绘',
|
|
title: '基础测绘',
|
|
|
- sm_title: '快速进行大范围二维、三维建模',
|
|
|
|
|
- img: require('@/assets/img/service1.jpg'),
|
|
|
|
|
- // 跳转到当前Solution 目录下的其他组件,组件名为:Solution1
|
|
|
|
|
- component:Surveying
|
|
|
|
|
-
|
|
|
|
|
- }, {
|
|
|
|
|
- id: 'section-2',
|
|
|
|
|
- title: '建筑工程',
|
|
|
|
|
- sm_title: '房屋建筑业和土木工程建筑业应用',
|
|
|
|
|
- img: require('@/assets/img/service2.jpg')
|
|
|
|
|
- }, {
|
|
|
|
|
- id: 'section-3',
|
|
|
|
|
- title: '安全生产',
|
|
|
|
|
- sm_title: '提供可见光或红外热成像数据',
|
|
|
|
|
- img: require('@/assets/img/service3.jpg')
|
|
|
|
|
- }, {
|
|
|
|
|
- id: 'section-4',
|
|
|
|
|
- title: '应急救援',
|
|
|
|
|
- sm_title: '使用无人机开展辅助救援工作',
|
|
|
|
|
- img: require('@/assets/img/service4.jpg')
|
|
|
|
|
|
|
+ description: '快速进行大范围二维、三维建模,生成地形数据,降低外业成本',
|
|
|
|
|
+ image: require('@/assets/img/service1.jpg')
|
|
|
},
|
|
},
|
|
|
- // {
|
|
|
|
|
- // id: 'section-5',
|
|
|
|
|
- // title: '自然资源调查',
|
|
|
|
|
- // sm_title: '提供可见光或多光谱数据,对植被、水域、道路等进行自动化高效分类',
|
|
|
|
|
- // img: require('@/assets/img/service4.jpg')
|
|
|
|
|
- // }
|
|
|
|
|
- ],
|
|
|
|
|
- // web显示
|
|
|
|
|
- largeList: [
|
|
|
|
|
{
|
|
{
|
|
|
- id: 'section-1',
|
|
|
|
|
- backgroundImage: require('@/assets/img/service1.jpg'),
|
|
|
|
|
- title: "基础测绘",
|
|
|
|
|
- sm_title: '快速进行大范围二维、三维建模,生成地形数据,降低外业成本',
|
|
|
|
|
- }, {
|
|
|
|
|
- id: 'section-2',
|
|
|
|
|
- backgroundImage: require('@/assets/img/service2.jpg'),
|
|
|
|
|
- title: "建筑工程",
|
|
|
|
|
- sm_title: '房屋建筑业(房建)和土木工程建筑业(基建)领域应用',
|
|
|
|
|
- }, {
|
|
|
|
|
- id: 'section-3',
|
|
|
|
|
- backgroundImage: require('@/assets/img/service3.jpg'),
|
|
|
|
|
- title: "安全生产",
|
|
|
|
|
- sm_title: '提供可见光或红外热成像数据',
|
|
|
|
|
|
|
+ path: '/solutions/building',
|
|
|
|
|
+ title: '建筑工程',
|
|
|
|
|
+ description: '房屋建筑业(房建)和土木工程建筑业(基建)领域应用',
|
|
|
|
|
+ image: require('@/assets/img/service2.jpg')
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
- id: 'section-4',
|
|
|
|
|
- backgroundImage: require('@/assets/img/service4.jpg'),
|
|
|
|
|
- title: "应急救援",
|
|
|
|
|
- sm_title: '救援队伍使用无人机通过空中视角对灾情进行评估、研判,开展辅助救援工作',
|
|
|
|
|
|
|
+ path: '/solutions/safety',
|
|
|
|
|
+ title: '安全生产',
|
|
|
|
|
+ description: '提供可见光或红外热成像数据,全天候自动化安全巡检',
|
|
|
|
|
+ image: require('@/assets/img/service3.jpg')
|
|
|
},
|
|
},
|
|
|
- // {
|
|
|
|
|
- // id: 'section-5',
|
|
|
|
|
- // backgroundImage: require('@/assets/img/service1.jpg'),
|
|
|
|
|
- // title: "自然资源调查",
|
|
|
|
|
- // sm_title: '无人机可提供可见光或多光谱数据,可对植被、水域、道路等进行自动化高效分类,为资源管理提供科学可靠的信息。',
|
|
|
|
|
- // },
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ path: '/solutions/emergency-rescue',
|
|
|
|
|
+ title: '应急救援',
|
|
|
|
|
+ description: '救援队伍使用无人机通过空中视角对灾情进行评估、研判',
|
|
|
|
|
+ image: require('@/assets/img/service4.jpg')
|
|
|
|
|
+ }
|
|
|
]
|
|
]
|
|
|
- }
|
|
|
|
|
|
|
+ };
|
|
|
},
|
|
},
|
|
|
mounted() {
|
|
mounted() {
|
|
|
var wow = new WOW();
|
|
var wow = new WOW();
|
|
|
wow.init();
|
|
wow.init();
|
|
|
- },
|
|
|
|
|
- methods: {
|
|
|
|
|
- AccordingClick(id) {
|
|
|
|
|
- this.$router.push({
|
|
|
|
|
- name: 'detail', // 解释:这里的name是路由的name,不是组件的name,在router/index.js中定义,我需要修改detail.vue的位置,
|
|
|
|
|
- params: {
|
|
|
|
|
- id: id
|
|
|
|
|
- }
|
|
|
|
|
- })
|
|
|
|
|
- }
|
|
|
|
|
}
|
|
}
|
|
|
-}
|
|
|
|
|
|
|
+};
|
|
|
</script>
|
|
</script>
|
|
|
|
|
+
|
|
|
<style scoped>
|
|
<style scoped>
|
|
|
-.accordion-container {
|
|
|
|
|
|
|
+/* Banner */
|
|
|
|
|
+.banner {
|
|
|
|
|
+ color: #fff;
|
|
|
|
|
+ height: 200px;
|
|
|
|
|
+ display: flex;
|
|
|
|
|
+ flex-direction: column;
|
|
|
|
|
+ justify-content: center;
|
|
|
|
|
+ align-items: center;
|
|
|
|
|
+ background-image: url("../../assets/img/banner_4.jpg");
|
|
|
|
|
+ background-repeat: no-repeat;
|
|
|
|
|
+ background-size: cover;
|
|
|
|
|
+ background-attachment: scroll;
|
|
|
|
|
+ background-position: center center;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.banner h1 {
|
|
|
|
|
+ font-size: 36px;
|
|
|
|
|
+ font-weight: var(--font-weight-bold);
|
|
|
|
|
+ margin: 0 0 10px;
|
|
|
|
|
+ letter-spacing: 2px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.banner p {
|
|
|
|
|
+ font-size: 16px;
|
|
|
|
|
+ color: rgba(255, 255, 255, 0.8);
|
|
|
|
|
+ margin: 0;
|
|
|
|
|
+ letter-spacing: 1px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+/* 解决方案网格 */
|
|
|
|
|
+.solutions-grid {
|
|
|
|
|
+ display: grid;
|
|
|
|
|
+ grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
|
|
|
+ gap: 30px;
|
|
|
|
|
+ margin-top: 40px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-card {
|
|
|
|
|
+ display: block;
|
|
|
|
|
+ background: #fff;
|
|
|
|
|
+ border-radius: var(--radius-lg);
|
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
|
|
|
+ box-shadow: var(--shadow-md);
|
|
|
|
|
+ transition: var(--transition-bounce);
|
|
|
|
|
+ text-decoration: none;
|
|
|
|
|
+ color: inherit;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-card:hover {
|
|
|
|
|
+ transform: translateY(-10px);
|
|
|
|
|
+ box-shadow: var(--shadow-lg), var(--glow-blue);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-image {
|
|
|
|
|
+ position: relative;
|
|
|
|
|
+ height: 200px;
|
|
|
|
|
+ overflow: hidden;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-image img {
|
|
|
|
|
+ width: 100%;
|
|
|
|
|
+ height: 100%;
|
|
|
|
|
+ object-fit: cover;
|
|
|
|
|
+ transition: transform 0.5s ease;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-card:hover .solution-image img {
|
|
|
|
|
+ transform: scale(1.1);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-overlay {
|
|
|
|
|
+ position: absolute;
|
|
|
|
|
+ top: 0;
|
|
|
|
|
+ left: 0;
|
|
|
|
|
+ width: 100%;
|
|
|
|
|
+ height: 100%;
|
|
|
|
|
+ background: rgba(30, 115, 190, 0.8);
|
|
|
display: flex;
|
|
display: flex;
|
|
|
- justify-content: flex-start;
|
|
|
|
|
- align-items: flex-start;
|
|
|
|
|
- background: white;
|
|
|
|
|
-
|
|
|
|
|
- .accordion-item {
|
|
|
|
|
- list-style: none;
|
|
|
|
|
- height: 480px;
|
|
|
|
|
- transition: width 0.5s;
|
|
|
|
|
- background-repeat: no-repeat;
|
|
|
|
|
- background-size: cover;
|
|
|
|
|
- background-position: center center;
|
|
|
|
|
- position: relative;
|
|
|
|
|
- display: flex;
|
|
|
|
|
- justify-content: center;
|
|
|
|
|
- align-items: center;
|
|
|
|
|
-
|
|
|
|
|
- &:not(:hover) {
|
|
|
|
|
- width: 25%;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- &:hover {
|
|
|
|
|
- width: 50%;
|
|
|
|
|
-
|
|
|
|
|
- &::after {
|
|
|
|
|
- opacity: 1;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- &::after {
|
|
|
|
|
- content: '';
|
|
|
|
|
- width: 100%;
|
|
|
|
|
- height: 100%;
|
|
|
|
|
- position: absolute;
|
|
|
|
|
- left: 0;
|
|
|
|
|
- top: 0;
|
|
|
|
|
- background-color: rgba(0, 0, 0, 0.1);
|
|
|
|
|
- z-index: 1;
|
|
|
|
|
- opacity: 0;
|
|
|
|
|
- transition: opacity 0.5s;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- h5 {
|
|
|
|
|
- font-family: var(--font-family-base);
|
|
|
|
|
- font-weight: var(--font-weight-medium);
|
|
|
|
|
- color: #fff;
|
|
|
|
|
- font-size: 18px;
|
|
|
|
|
- margin-bottom: 240px;
|
|
|
|
|
- z-index: 2;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- p {
|
|
|
|
|
- font-family: var(--font-family-base);
|
|
|
|
|
- font-weight: var(--font-weight-light);
|
|
|
|
|
- color: #fff;
|
|
|
|
|
- font-size: 14px;
|
|
|
|
|
- z-index: 2;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ align-items: center;
|
|
|
|
|
+ justify-content: center;
|
|
|
|
|
+ opacity: 0;
|
|
|
|
|
+ transition: opacity 0.3s ease;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-card:hover .solution-overlay {
|
|
|
|
|
+ opacity: 1;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-icon {
|
|
|
|
|
+ color: #fff;
|
|
|
|
|
+ font-size: 32px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-content {
|
|
|
|
|
+ padding: 25px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-content h3 {
|
|
|
|
|
+ font-size: 20px;
|
|
|
|
|
+ font-weight: var(--font-weight-semibold);
|
|
|
|
|
+ color: var(--text-primary);
|
|
|
|
|
+ margin: 0 0 12px;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+.solution-content p {
|
|
|
|
|
+ font-size: 14px;
|
|
|
|
|
+ line-height: 1.6;
|
|
|
|
|
+ color: var(--text-tertiary);
|
|
|
|
|
+ margin: 0;
|
|
|
|
|
+ display: -webkit-box;
|
|
|
|
|
+ -webkit-line-clamp: 2;
|
|
|
|
|
+ -webkit-box-orient: vertical;
|
|
|
|
|
+ overflow: hidden;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+/* 响应式 */
|
|
|
|
|
+@media screen and (max-width: 991px) {
|
|
|
|
|
+ .banner {
|
|
|
|
|
+ height: 150px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .banner h1 {
|
|
|
|
|
+ font-size: 28px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .solutions-grid {
|
|
|
|
|
+ grid-template-columns: repeat(2, 1fr);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-</style>
|
|
|
|
|
|
|
|
|
|
|
|
+@media screen and (max-width: 767px) {
|
|
|
|
|
+ .banner {
|
|
|
|
|
+ height: 120px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .banner h1 {
|
|
|
|
|
+ font-size: 24px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .banner p {
|
|
|
|
|
+ font-size: 14px;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .solutions-grid {
|
|
|
|
|
+ grid-template-columns: 1fr;
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+</style>
|