250 lines
4.9 KiB
Vue
250 lines
4.9 KiB
Vue
|
|
<template>
|
|||
|
|
<div class="container-fluid text-center mainitems" style="background: #FAFAFA;">
|
|||
|
|
<div class="headtit">多场景应用</div>
|
|||
|
|
<div class="minstit">通过专业的智能硬件与软件系统开发,解决物联网平台在各类复杂场景下的应用问题</div>
|
|||
|
|
<div class="row bodycnt">
|
|||
|
|
<div
|
|||
|
|
v-for="(application, index) in applications"
|
|||
|
|
:key="index"
|
|||
|
|
class="col-xs-12 col-lg-2"
|
|||
|
|
:class="{ 'col-lg-offset-2': index === 0 }"
|
|||
|
|
@mouseenter="setHovered(index)"
|
|||
|
|
@mouseleave="clearHovered"
|
|||
|
|
>
|
|||
|
|
<div
|
|||
|
|
class="bodycnt-info"
|
|||
|
|
:class="`bodycnt-info${index + 1}`"
|
|||
|
|
>
|
|||
|
|
<img :src="application.image" :alt="application.title">
|
|||
|
|
<span></span>{{ application.title }}
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="bodycnt-datails" :class="{ 'show': hoveredIndex === index }">
|
|||
|
|
<h2>{{ application.title }}</h2>
|
|||
|
|
<span></span>
|
|||
|
|
<p v-html="application.description"></p>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="m-btns">
|
|||
|
|
<a href="/yuxi/Intelhardware">了解更多</a>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script setup lang="ts">
|
|||
|
|
import { ref } from 'vue'
|
|||
|
|
|
|||
|
|
// 响应式数据
|
|||
|
|
const hoveredIndex = ref(-1)
|
|||
|
|
|
|||
|
|
// 应用场景数据
|
|||
|
|
const applications = [
|
|||
|
|
{
|
|||
|
|
title: '智能家居',
|
|||
|
|
image: '/www.yuxiit.com/img/yuxiupdata/banner2-1.png',
|
|||
|
|
description: '智能门锁<br> 智能空调<br> 智能电饭煲<br> 智能窗帘<br> …'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
title: '智慧出行',
|
|||
|
|
image: '/www.yuxiit.com/img/yuxiupdata/banner2-2.png',
|
|||
|
|
description: '共享单车<br> 共享汽车<br> 共享滑板车<br> 共享电动车<br> …'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
title: '智慧医疗',
|
|||
|
|
image: '/www.yuxiit.com/img/yuxiupdata/banner2-3.png',
|
|||
|
|
description: '共享陪护床<br> 智能安防<br> 共享打印机<br> 共享充电宝<br> …'
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
title: '智慧园区',
|
|||
|
|
image: '/www.yuxiit.com/img/yuxiupdata/banner2-4.png',
|
|||
|
|
description: '智能自提柜<br> 共享健身房<br> 共享洗衣机<br> 智能门禁<br> …'
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
// 方法
|
|||
|
|
const setHovered = (index: number) => {
|
|||
|
|
hoveredIndex.value = index
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
const clearHovered = () => {
|
|||
|
|
hoveredIndex.value = -1
|
|||
|
|
}
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style scoped>
|
|||
|
|
.mainitems {
|
|||
|
|
padding: 60px 0;
|
|||
|
|
background: #FAFAFA;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.headtit {
|
|||
|
|
font-size: 2.5em;
|
|||
|
|
color: #333;
|
|||
|
|
margin-bottom: 20px;
|
|||
|
|
font-weight: bold;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.minstit {
|
|||
|
|
font-size: 1.2em;
|
|||
|
|
color: #666;
|
|||
|
|
margin-bottom: 50px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt {
|
|||
|
|
display: flex;
|
|||
|
|
justify-content: center;
|
|||
|
|
flex-wrap: wrap;
|
|||
|
|
gap: 20px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info {
|
|||
|
|
position: relative;
|
|||
|
|
background: #fff;
|
|||
|
|
border-radius: 8px;
|
|||
|
|
padding: 40px 20px;
|
|||
|
|
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
|
|||
|
|
transition: all 0.3s ease;
|
|||
|
|
cursor: pointer;
|
|||
|
|
height: 200px;
|
|||
|
|
display: flex;
|
|||
|
|
flex-direction: column;
|
|||
|
|
justify-content: center;
|
|||
|
|
align-items: center;
|
|||
|
|
overflow: hidden;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info:hover {
|
|||
|
|
transform: translateY(-5px);
|
|||
|
|
box-shadow: 0 8px 16px rgba(0,0,0,0.15);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info img {
|
|||
|
|
width: 60px;
|
|||
|
|
height: 60px;
|
|||
|
|
margin-bottom: 15px;
|
|||
|
|
object-fit: contain;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info span {
|
|||
|
|
font-size: 1.2em;
|
|||
|
|
color: #333;
|
|||
|
|
font-weight: bold;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/* 不同应用场景的背景色 */
|
|||
|
|
.bodycnt-info1 {
|
|||
|
|
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info2 {
|
|||
|
|
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info3 {
|
|||
|
|
background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info4 {
|
|||
|
|
background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-datails {
|
|||
|
|
position: absolute;
|
|||
|
|
top: 0;
|
|||
|
|
left: 0;
|
|||
|
|
right: 0;
|
|||
|
|
bottom: 0;
|
|||
|
|
background: rgba(0,0,0,0.9);
|
|||
|
|
color: #fff;
|
|||
|
|
border-radius: 8px;
|
|||
|
|
padding: 30px 20px;
|
|||
|
|
display: flex;
|
|||
|
|
flex-direction: column;
|
|||
|
|
justify-content: center;
|
|||
|
|
align-items: center;
|
|||
|
|
opacity: 0;
|
|||
|
|
transition: all 0.3s ease;
|
|||
|
|
cursor: pointer;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-datails.show {
|
|||
|
|
opacity: 1;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-datails h2 {
|
|||
|
|
font-size: 1.5em;
|
|||
|
|
margin-bottom: 15px;
|
|||
|
|
font-weight: bold;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-datails span {
|
|||
|
|
width: 50px;
|
|||
|
|
height: 2px;
|
|||
|
|
background: #fff;
|
|||
|
|
margin-bottom: 20px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-datails p {
|
|||
|
|
font-size: 0.9em;
|
|||
|
|
line-height: 1.8;
|
|||
|
|
text-align: center;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.m-btns {
|
|||
|
|
margin-top: 50px;
|
|||
|
|
text-align: center;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.m-btns a {
|
|||
|
|
display: inline-block;
|
|||
|
|
padding: 15px 30px;
|
|||
|
|
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|||
|
|
color: #fff;
|
|||
|
|
text-decoration: none;
|
|||
|
|
border-radius: 25px;
|
|||
|
|
font-weight: bold;
|
|||
|
|
transition: all 0.3s ease;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.m-btns a:hover {
|
|||
|
|
transform: translateY(-2px);
|
|||
|
|
box-shadow: 0 8px 16px rgba(102, 126, 234, 0.3);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@media (max-width: 1200px) {
|
|||
|
|
.bodycnt {
|
|||
|
|
justify-content: space-around;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.col-lg-2 {
|
|||
|
|
flex: 0 0 30%;
|
|||
|
|
max-width: 30%;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@media (max-width: 768px) {
|
|||
|
|
.headtit {
|
|||
|
|
font-size: 2em;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.minstit {
|
|||
|
|
font-size: 1em;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.col-lg-2 {
|
|||
|
|
flex: 0 0 100%;
|
|||
|
|
max-width: 100%;
|
|||
|
|
margin-bottom: 20px;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.bodycnt-info {
|
|||
|
|
height: 180px;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</style>
|