499 lines
12 KiB
Vue
499 lines
12 KiB
Vue
<template>
|
||
<page class="home-page">
|
||
<zui-header>
|
||
<template #buttons>
|
||
<zui-button @click="onButtonClick('callus')">联系我们</zui-button>
|
||
<zui-button @click="onButtonClick('resource')">资料下载</zui-button>
|
||
<zui-button @click="onButtonClick('home')">首页</zui-button>
|
||
</template>
|
||
</zui-header>
|
||
|
||
<div class="contact-banner">
|
||
<div class="banner-overlay"></div>
|
||
<div class="banner-content">
|
||
<h1 class="vivify popIn">联系我们</h1>
|
||
<p class="banner-subtitle vivify popIn delay-100">随时为您提供专业的咨询服务</p>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="contact-flow">
|
||
<div class="flow-content">
|
||
<div class="flow-item vivify popIn">
|
||
<div class="flow-number">1</div>
|
||
<h3>联系我们</h3>
|
||
</div>
|
||
<div class="flow-arrow">→</div>
|
||
<div class="flow-item vivify popIn delay-100">
|
||
<div class="flow-number">2</div>
|
||
<h3>注册账号</h3>
|
||
</div>
|
||
<div class="flow-arrow">→</div>
|
||
<div class="flow-item vivify popIn delay-200">
|
||
<div class="flow-number">3</div>
|
||
<h3>免费使用</h3>
|
||
</div>
|
||
</div>
|
||
<p class="flow-desc">满足您的记账需求、健康记录、物联网建设</p>
|
||
</div>
|
||
|
||
<div class="contact-cards">
|
||
<div class="contact-card vivify popIn">
|
||
<h3>微信公众号</h3>
|
||
<div class="card-divider"></div>
|
||
<div class="qrcode-section single">
|
||
<div class="qrcode-item">
|
||
<div class="qrcode-image">
|
||
<img :src="wxgzh" alt="公众号二维码"/>
|
||
</div>
|
||
<p>智聪PL</p>
|
||
</div>
|
||
</div>
|
||
<div class="card-tip">扫码关注,获取更多资讯</div>
|
||
</div>
|
||
|
||
<div class="contact-card vivify popIn delay-100">
|
||
<h3>联系方式</h3>
|
||
<div class="card-divider"></div>
|
||
<div class="qrcode-section single">
|
||
<div class="qrcode-item">
|
||
<div class="qrcode-image">
|
||
<img :src="zckj" alt="客服微信二维码"/>
|
||
</div>
|
||
<p>客服微信</p>
|
||
</div>
|
||
</div>
|
||
<div class="card-tip">客服电话:17753252359</div>
|
||
</div>
|
||
</div>
|
||
|
||
<zui-footer/>
|
||
</page>
|
||
</template>
|
||
<script>
|
||
import './less/home-page.less'
|
||
import Logo from '../components/Logo'
|
||
import Page from '../components/Page'
|
||
import ZuiHeader from '../components/Header'
|
||
import ZuiFooter from '../components/Footer'
|
||
import ZuiButton from '../components/Button'
|
||
import feature1 from '../assets/img/feature1.png'
|
||
import feature2 from '../assets/img/feature2.png'
|
||
import feature3 from '../assets/img/feature3.png'
|
||
import feature4 from '../assets/img/feature4.png'
|
||
import wxgzh from '../assets/img/wxgzh.jpg'
|
||
import zckj from '../assets/img/zckj.jpg'
|
||
import Util from '../Util'
|
||
export default{
|
||
components: {Page, Logo, ZuiHeader, ZuiFooter,ZuiButton},
|
||
data () {
|
||
return {
|
||
feature1: feature1,
|
||
feature2: feature2,
|
||
feature3: feature3,
|
||
feature4: feature4,
|
||
wxgzh: wxgzh,
|
||
zckj: zckj,
|
||
carouselPerPage: (Util.os.android || Util.os.iPhone|| Util.os.wechat|| Util.os.mobile|| Util.os.isapp|| Util.os.harmonyOS) ? 1 : 2
|
||
}
|
||
},
|
||
methods: {
|
||
onButtonClick: function (e) {
|
||
if(e=="callus"){
|
||
this.$router.push({path:'/callus'})
|
||
}else if(e=="resource"){
|
||
this.$router.push({path:'/resource'})
|
||
}else{
|
||
this.$router.push({path:'/'})
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
</script>
|
||
<style scoped lang="less">
|
||
// 联系我们 Banner
|
||
.contact-banner {
|
||
position: relative;
|
||
min-height: 300px;
|
||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
overflow: hidden;
|
||
|
||
.banner-overlay {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
background-image:
|
||
linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
|
||
linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
|
||
background-size: 40px 40px;
|
||
animation: gridMove 15s linear infinite;
|
||
}
|
||
|
||
.banner-content {
|
||
position: relative;
|
||
z-index: 1;
|
||
text-align: center;
|
||
color: #fff;
|
||
|
||
h1 {
|
||
font-size: 48px;
|
||
font-weight: 700;
|
||
margin: 0 0 20px;
|
||
text-shadow: 0 4px 20px rgba(0,0,0,0.3);
|
||
letter-spacing: 4px;
|
||
}
|
||
|
||
.banner-subtitle {
|
||
font-size: 20px;
|
||
opacity: 0.95;
|
||
margin: 0;
|
||
letter-spacing: 2px;
|
||
}
|
||
}
|
||
}
|
||
|
||
// 流程区域
|
||
.contact-flow {
|
||
padding: 60px 20px;
|
||
background: linear-gradient(180deg, #f8fffe 0%, #fff 100%);
|
||
|
||
.flow-content {
|
||
max-width: 900px;
|
||
margin: 0 auto;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
gap: 30px;
|
||
flex-wrap: wrap;
|
||
}
|
||
|
||
.flow-item {
|
||
text-align: center;
|
||
|
||
.flow-number {
|
||
width: 70px;
|
||
height: 70px;
|
||
margin: 0 auto 15px;
|
||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||
border-radius: 50%;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
font-size: 32px;
|
||
font-weight: 700;
|
||
color: #fff;
|
||
box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
|
||
transition: all 0.3s ease;
|
||
|
||
&:hover {
|
||
transform: scale(1.1);
|
||
box-shadow: 0 12px 30px rgba(102, 126, 234, 0.4);
|
||
}
|
||
}
|
||
|
||
h3 {
|
||
font-size: 20px;
|
||
color: #333;
|
||
margin: 0;
|
||
font-weight: 600;
|
||
}
|
||
}
|
||
|
||
.flow-arrow {
|
||
font-size: 30px;
|
||
color: #667eea;
|
||
font-weight: 700;
|
||
}
|
||
|
||
.flow-desc {
|
||
text-align: center;
|
||
margin-top: 40px;
|
||
font-size: 18px;
|
||
color: #666;
|
||
letter-spacing: 1px;
|
||
}
|
||
}
|
||
|
||
// 联系卡片
|
||
.contact-cards {
|
||
padding: 60px 20px 80px;
|
||
background: #f8f9fa;
|
||
display: flex;
|
||
justify-content: center;
|
||
gap: 40px;
|
||
flex-wrap: wrap;
|
||
|
||
.contact-card {
|
||
width: 100%;
|
||
max-width: 450px;
|
||
background: #fff;
|
||
border-radius: 20px;
|
||
padding: 40px 30px;
|
||
box-shadow: 0 10px 40px rgba(0,0,0,0.08);
|
||
transition: all 0.3s ease;
|
||
border: 2px solid transparent;
|
||
|
||
&:hover {
|
||
transform: translateY(-8px);
|
||
box-shadow: 0 15px 50px rgba(102, 126, 234, 0.15);
|
||
border-color: rgba(102, 126, 234, 0.2);
|
||
}
|
||
|
||
.card-icon {
|
||
width: 100px;
|
||
height: 100px;
|
||
margin: 0 auto 25px;
|
||
background: linear-gradient(135deg, rgba(102, 126, 234, 0.1), rgba(118, 75, 162, 0.1));
|
||
border-radius: 20px;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
|
||
img {
|
||
width: 70px;
|
||
height: 70px;
|
||
object-fit: contain;
|
||
}
|
||
}
|
||
|
||
h3 {
|
||
text-align: center;
|
||
font-size: 24px;
|
||
color: #333;
|
||
margin: 0 0 20px;
|
||
font-weight: 600;
|
||
}
|
||
|
||
.card-divider {
|
||
width: 60px;
|
||
height: 3px;
|
||
background: linear-gradient(90deg, #667eea, #764ba2);
|
||
margin: 0 auto 25px;
|
||
border-radius: 2px;
|
||
}
|
||
|
||
.card-info {
|
||
p {
|
||
font-size: 16px;
|
||
line-height: 2;
|
||
margin: 10px 0;
|
||
color: #555;
|
||
display: flex;
|
||
align-items: baseline;
|
||
|
||
.label {
|
||
color: #667eea;
|
||
font-weight: 600;
|
||
min-width: 100px;
|
||
flex-shrink: 0;
|
||
}
|
||
}
|
||
}
|
||
|
||
.qrcode-section {
|
||
display: flex;
|
||
justify-content: center;
|
||
gap: 25px;
|
||
margin: 25px 0;
|
||
padding: 20px 0;
|
||
border-top: 1px dashed rgba(102, 126, 234, 0.2);
|
||
|
||
// 单个二维码样式
|
||
&.single .qrcode-item .qrcode-placeholder {
|
||
width: 160px;
|
||
height: 160px;
|
||
}
|
||
|
||
&.single .qrcode-item .qrcode-image {
|
||
width: 180px;
|
||
height: 180px;
|
||
}
|
||
|
||
.qrcode-item {
|
||
flex: 0 0 auto;
|
||
text-align: center;
|
||
|
||
.qrcode-placeholder {
|
||
width: 130px;
|
||
height: 130px;
|
||
margin: 0 auto 10px;
|
||
background: linear-gradient(135deg, rgba(102, 126, 234, 0.05), rgba(118, 75, 162, 0.05));
|
||
border: 2px dashed rgba(102, 126, 234, 0.3);
|
||
border-radius: 12px;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
transition: all 0.3s ease;
|
||
|
||
span {
|
||
color: #667eea;
|
||
font-size: 12px;
|
||
font-weight: 500;
|
||
text-align: center;
|
||
padding: 8px;
|
||
line-height: 1.3;
|
||
}
|
||
|
||
&:hover {
|
||
background: linear-gradient(135deg, rgba(102, 126, 234, 0.08), rgba(118, 75, 162, 0.08));
|
||
border-color: rgba(102, 126, 234, 0.5);
|
||
transform: scale(1.05);
|
||
}
|
||
}
|
||
|
||
.qrcode-image {
|
||
width: 130px;
|
||
height: 130px;
|
||
margin: 0 auto 10px;
|
||
padding: 8px;
|
||
background: #fff;
|
||
border: 2px solid rgba(102, 126, 234, 0.2);
|
||
border-radius: 12px;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
transition: all 0.3s ease;
|
||
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
|
||
|
||
img {
|
||
width: 100%;
|
||
height: 100%;
|
||
object-fit: contain;
|
||
border-radius: 8px;
|
||
}
|
||
|
||
&:hover {
|
||
border-color: rgba(102, 126, 234, 0.5);
|
||
transform: scale(1.05);
|
||
box-shadow: 0 4px 15px rgba(102, 126, 234, 0.15);
|
||
}
|
||
}
|
||
|
||
p {
|
||
margin: 0;
|
||
color: #667eea;
|
||
font-size: 13px;
|
||
font-weight: 600;
|
||
}
|
||
}
|
||
}
|
||
|
||
.card-tip {
|
||
margin-top: 25px;
|
||
padding: 12px 20px;
|
||
background: linear-gradient(135deg, rgba(102, 126, 234, 0.08), rgba(118, 75, 162, 0.08));
|
||
border-radius: 10px;
|
||
text-align: center;
|
||
color: #667eea;
|
||
font-size: 14px;
|
||
font-weight: 500;
|
||
letter-spacing: 0.5px;
|
||
}
|
||
}
|
||
}
|
||
|
||
@keyframes gridMove {
|
||
0% { transform: translate(0, 0); }
|
||
100% { transform: translate(40px, 40px); }
|
||
}
|
||
|
||
// 响应式优化
|
||
@media (max-width: 768px) {
|
||
.contact-banner {
|
||
min-height: 250px;
|
||
|
||
.banner-content h1 {
|
||
font-size: 36px;
|
||
letter-spacing: 2px;
|
||
}
|
||
|
||
.banner-content .banner-subtitle {
|
||
font-size: 16px;
|
||
}
|
||
}
|
||
|
||
.contact-flow {
|
||
padding: 40px 15px;
|
||
|
||
.flow-content {
|
||
gap: 20px;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.flow-item .flow-number {
|
||
width: 60px;
|
||
height: 60px;
|
||
font-size: 28px;
|
||
}
|
||
|
||
.flow-item h3 {
|
||
font-size: 16px;
|
||
}
|
||
|
||
.flow-arrow {
|
||
font-size: 28px;
|
||
transform: rotate(90deg);
|
||
}
|
||
|
||
.flow-desc {
|
||
font-size: 15px;
|
||
margin-top: 30px;
|
||
}
|
||
}
|
||
|
||
.contact-cards {
|
||
padding: 40px 15px 60px;
|
||
gap: 25px;
|
||
|
||
.contact-card {
|
||
max-width: 100%;
|
||
padding: 30px 20px;
|
||
|
||
.card-icon {
|
||
width: 80px;
|
||
height: 80px;
|
||
|
||
img {
|
||
width: 60px;
|
||
height: 60px;
|
||
}
|
||
}
|
||
|
||
h3 {
|
||
font-size: 20px;
|
||
}
|
||
|
||
.card-info p {
|
||
font-size: 14px;
|
||
flex-direction: column;
|
||
align-items: flex-start;
|
||
|
||
.label {
|
||
min-width: auto;
|
||
margin-bottom: 5px;
|
||
}
|
||
}
|
||
|
||
.qrcode-section {
|
||
flex-direction: column;
|
||
gap: 20px;
|
||
|
||
.qrcode-item .qrcode-placeholder {
|
||
width: 120px;
|
||
height: 120px;
|
||
|
||
span {
|
||
font-size: 12px;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
</style>
|