From bae56a147be85be57ad1c64e9766c9aca750d187 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 04 三月 2025 16:04:12 +0800
Subject: [PATCH] 2025-03-04

---
 src/components/header.vue |  693 ++++++++++++++++++---------------------------------------
 1 files changed, 224 insertions(+), 469 deletions(-)

diff --git a/src/components/header.vue b/src/components/header.vue
index e2c2f9f..b50b3c6 100644
--- a/src/components/header.vue
+++ b/src/components/header.vue
@@ -1,75 +1,78 @@
 <template>
-	<div class="header" :class="!isShow ? '' : 'h_height'">
-		<div class="wrapper">
-			<a class="logo"><img src="../img/index_logo.png" alt=""></a>
-			<div class="nav" @mouseleave="leave()">
-				<!-- 绉诲姩绔痟eader鍥炬爣 -->
-				<span class="homeico p_hide" @click="jump('Index')"><img src="../img/homeico.png" alt=""></span>
-				<span class="navico" v-if="!isShow" @click="showNav"><img src="../img/navico.png" alt=""></span>
-				<span class="navico" v-else @click="showNav"><img src="../img/close.png" alt=""></span>
-				<!-- pc绔彍鍗曞垪琛� -->
-				<ul class="nav_ul" ref="nav_ul">
-					<li v-for="(menu, index) in menus" :key="index" :class="{active1: cur === index}" @click="jump(menu.url)">
-						<span @mouseover="contrlSubmenu(index)">{{ menu.text }}</span>
-					</li>
-					<div class="list1 active" v-if="menus[1].flag">
-						<ul class="abloutMingKe_ul">
-							<li @click="jump(product.url, product.Id, 'submenu')" v-for="(product, index) in products" :key="index">{{product.text}}</li>
-						</ul>
-						<ul class="abloutMingKe_ul1">
-							<li @click="jump(solution.url, solution.Id, 'submenu')" v-for="(solution, index) in solutions" :key="index">{{solution.text}}</li>
-						</ul>
-					</div>
-					<div class="list2 active" v-if="menus[5].flag">
-						<ul class="abloutMingKe_ul2">
-							<li v-for="(submenu, index) in minkesoft" @click="jump(submenu.url, index, 'aboutUs')" :key="index">{{submenu.text}}</li>
-						</ul>
-					</div>
-				</ul>
+	<div class="header-wrap">
+		<div class="pc-wrapper">
+			<a class="logo" @click="jumpview('home')"><img src="../img/index_logo.png" alt=""></a>
+			<div class="nav">
+				<el-menu :default-active="activeKey" mode="horizontal">
+					<el-menu-item index="home" @click="jumpview('home')">棣栭〉</el-menu-item>
+					<el-submenu index="product" popper-class="header-dubble-menu">
+						<template slot="title">浜у搧涓績</template>
+						<div class="dubble-ul-wrap">
+							<div class="dubble-ul">
+								<el-menu-item :index="'product-p' + index" :key="index" @click="jumpview(product.url, product.Id, 'submenu')" v-for="(product, index) in products">{{product.text}}</el-menu-item>
+							</div>
+							<div class="dubble-ul">
+								<el-menu-item :index="'product-s' + index" :key="index" @click="jumpview(solution.url, solution.Id, 'submenu')" v-for="(solution, index) in solutions">{{solution.text}}</el-menu-item>
+							</div>
+						</div>
+					</el-submenu>
+					<el-menu-item index="successcase" @click="jumpview('SuccessCase')">鎴愬姛妗堜緥</el-menu-item>
+					<el-menu-item index="partner" @click="jumpview('Partner')">娓犻亾鍚堜綔</el-menu-item>
+					<el-menu-item index="news" @click="jumpview('News')">鏂伴椈璧勮</el-menu-item>
+					<el-submenu index="companyprofile" popper-class="header-menu">
+						<template slot="title"><span @click="jumpview('Company')">鍏充簬鏄庣</span></template>
+						<el-menu-item index="companyProfile-1" @click="jumpview('CompanyProfile', 'culture.html')">浼佷笟鏂囧寲</el-menu-item>
+						<el-menu-item index="companyProfile-2" @click="jumpview('CompanyProfile', 'aptitude.html')">鑽h獕璧勮川</el-menu-item>
+						<el-menu-item index="companyProfile-3" @click="jumpview('CompanyProfile', 'contact.html')">鑱旂郴鏄庣</el-menu-item>
+						<el-menu-item index="companyProfile-4" @click="jumpview('joinMingKe')">鍔犲叆鏄庣</el-menu-item>
+					</el-submenu>
+					<el-menu-item index="word"><a href="http://mk9h.cn/a.asp?a=9CCB" ref="nofollow" target="_blank">鏂囨。涓績</a></el-menu-item>
+				</el-menu>
+			</div>
+			<div class="pc-tel">
+				<img src="../img/add3.png" alt class="footer_img" />
+				<span>400-189-1819</span>
+			</div>
+			<div class="register">
+				<span @click="jumpview('signup')">娉ㄥ唽</span>
+				<a href="https://cloud.mk9h.cn/index.html" ref="nofollow" target="_blank">鐧诲綍</a>
 			</div>
 		</div>
-
-		<div :class="!isShow ? 'nav_ul' : 'plane'" class="hidden">
-			<el-collapse accordion>
-				<el-collapse-item>
-					<template slot="title">
-						<span class="title_s">浜у搧涓績</span>
-					</template>
-					<div>
-						<div class="menu3" :class="{'more active': index === products.length - 1, 'active': selectedsubId === product.Id}"
-							@click="jump(product.url, product.Id, 'submenu')" v-for="(product, index) in products" :key="index">{{product.text}}</div>
-						<div style="clear: both;"></div>
-					</div>
+		<div class="mob-wrapper">
+			<a class="logo"><img src="../img/index_logo.png" alt=""></a>
+			<div class="nav">
+				<span class="homeico" @click="jumpview('Index')"><img src="../img/homeico.png" alt=""></span>
+				<span class="navico" v-if="!isShow" @click="isShow = !isShow"><img src="../img/navico.png" alt=""></span>
+				<span class="navico" v-else @click="isShow = !isShow"><img src="../img/close.png" alt=""></span>
+			</div>
+			<div class="register">
+				<span @click="jumpview('signup')">娉ㄥ唽</span>
+			</div>
+			<div class="mob-menu" v-show="isShow">
+				<el-menu :default-active="activeKey">
+					<el-submenu index="product" popper-class="header-dubble-menu">
+						<template slot="title">浜у搧涓績</template>
+						<el-menu-item-group>
+							<el-menu-item :index="'product-p' + index" :key="index" @click="jumpview(product.url, product.Id, 'submenu')" v-for="(product, index) in products">{{product.text}}</el-menu-item>
+						</el-menu-item-group>
+						<el-menu-item-group>
+							<el-menu-item :index="'product-s' + index" :key="index" @click="jumpview(solution.url, solution.Id, 'submenu')" v-for="(solution, index) in solutions">{{solution.text}}</el-menu-item>
+						</el-menu-item-group>
+					</el-submenu>
 					
-					<div class="menu3" :class="{'more active': index === solutions.length - 1, 'active': selectedsubId === solution.Id}"
-						@click="jump(solution.url, solution.Id, 'submenu')" v-for="(solution, index) in solutions" :key="index">{{solution.text}}</div>
-					<div style="clear: both;"></div>
-				</el-collapse-item>
-				<el-collapse-item class="el_coll">
-					<template slot="title">
-						<span @click="jump('SuccessCase')" class="title_s">鎴愬姛妗堜緥</span>
-					</template>
-				</el-collapse-item>
-				<el-collapse-item class="el_coll">
-					<template slot="title">
-						<span @click="jump('Partner')" class="title_s">娓犻亾鍚堜綔</span>
-					</template>
-				</el-collapse-item>
-				<el-collapse-item class="el_coll">
-					<template slot="title">
-						<span @click="jump('News')" class="title_s">鏂伴椈璧勮</span>
-					</template>
-				</el-collapse-item>
-				<el-collapse-item>
-					<template slot="title">
-						<span @click="jump('CompanyProfile')" class="title_s">鍏充簬鏄庣</span>
-					</template>
-					<div class="menu2" @click="jump('CompanyProfile', 0, 'aboutUs')">浼佷笟鏂囧寲</div>
-					<div class="menu2" @click="jump('CompanyProfile', 1, 'aboutUs')">鑽h獕璧勮川</div>
-					<div class="menu2" @click="jump('CompanyProfile', 2, 'aboutUs')">鑱旂郴鏄庣</div>
-					<div class="menu2" @click="jump('JoinMingKe')">鍔犲叆鏄庣</div>
-				</el-collapse-item>
-			</el-collapse>
+					<el-menu-item index="successcase" @click="jumpview('SuccessCase')"><div class="simple">鎴愬姛妗堜緥</div></el-menu-item>
+					<el-menu-item index="partner" @click="jumpview('Partner')"><div class="simple">娓犻亾鍚堜綔</div></el-menu-item>
+					<el-menu-item index="news" @click="jumpview('News')"><div class="simple">鏂伴椈璧勮</div></el-menu-item>
+					<el-submenu index="companyprofile" popper-class="header-menu">
+						<template slot="title"><span @click="jumpview('Company')">鍏充簬鏄庣</span></template>
+						<el-menu-item index="companyProfile-1" @click="jumpview('CompanyProfile', 'culture.html')">浼佷笟鏂囧寲</el-menu-item>
+						<el-menu-item index="companyProfile-2" @click="jumpview('CompanyProfile', 'aptitude.html')">鑽h獕璧勮川</el-menu-item>
+						<el-menu-item index="companyProfile-3" @click="jumpview('CompanyProfile', 'contact.html')">鑱旂郴鏄庣</el-menu-item>
+						<el-menu-item index="companyProfile-4" @click="jumpview('joinMingKe')">鍔犲叆鏄庣</el-menu-item>
+					</el-submenu>
+					<el-menu-item index="word"><a href="http://mk9h.cn/a.asp?a=9CCB" ref="nofollow" target="_blank">鏂囨。涓績</a></el-menu-item>
+				</el-menu>
+			</div>
 		</div>
 	</div>
 </template>
@@ -79,103 +82,34 @@
 		name: 'Header',
 		data() {
 			return {
-				activeNames: ['1'],
-				cur: 0,
+				activeKey: 'home',
+				cur: -1,
+				curtab: 0,
 				isShow: false,
 				selectedsubId: null,
-				menus: [{
-						text: '棣栭〉',
-						url: 'Index',
-					},
-					{
-						text: '浜у搧涓績',
-						url: '',
-						flag: false,
-					},
-					{
-						text: '鎴愬姛妗堜緥',
-						url: 'SuccessCase',
-					},
-					{
-						text: '娓犻亾鍚堜綔',
-						url: 'Partner'
-					},
-					{
-						text: '鏂伴椈璧勮',
-						url: 'News'
-					},
-					{
-						text: '鍏充簬鏄庣',
-						url: 'CompanyProfile',
-						flag: false,
-					}
-				],
 				products: null,
-				solutions: null,
-				minkesoft: [{
-						text: '浼佷笟鏂囧寲',
-						url: 'CompanyProfile'
-					},
-					{
-						text: '鑽h獕璧勮川',
-						url: 'CompanyProfile'
-					},
-					{
-						text: '鑱旂郴鏄庣',
-						url: 'CompanyProfile'
-					},
-					{
-						text: '鍔犲叆鏄庣',
-						url: 'JoinMingKe'
-					}
-				]
+				solutions: null
 			}
 		},
 		methods: {
-			jump (name, index, type) {
-				if (!name) return
-				this.selectedsubId = null
+			jumpview (url, par, type) {
+				let name = url.toLowerCase()
+				let params = {}
 				this.isShow = false
-				name = name.toLowerCase()
-				if (!type) { // 涓婚〉闈㈣烦杞�
-					if (name === 'companyprofile') { // 鍏充簬鏄庣,閿氱偣鍙傛暟
-						this.$router.push({name: name, params: {hash: 'null'}})
-					} else {
-						this.$router.push({name: name})
-					}
+				if (name === 'companyprofile') {
+					params.hash = par
 				} else if (type === 'submenu') { // 浜у搧涓績瀛愰〉闈㈣烦杞�
-					this.menus[1].flag = false
-					this.menus[5].flag = false
-					this.selectedsubId = index
-					this.$router.push({name: name, params: {menuId: index}})
-				} else if (type === 'aboutUs') { // 鍏充簬鏄庣瀛愰〉闈㈣烦杞�
-					if (index === 3) { // 鍔犲叆鏄庣
-						this.$router.push({name: name})
-					} else {
-						this.$router.push({name: 'companyprofile', params: {hash: `#anchor-${index + 1}`}})
+					this.activeKey = 'product'
+					params.menuId = par + '.html'
+				} else if (name === 'signup') {
+					if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i))) {
+						name = 'mobsignup'
 					}
+					window.open(window.location.origin + '/' + name)
+					return
 				}
-			},
-			showNav () {
-				this.isShow = !this.isShow
-				this.$refs.nav_ul.style.left = this.isShow ? (0 + 'px') : (-1000 + 'px')
-			},
-			contrlSubmenu (index) {
-				this.cur = index
-				if (index == 1) {
-					this.menus[index].flag = !this.menus[index].flag
-					this.menus[5].flag = false
-				} else if (index == 5) {
-					this.menus[index].flag = !this.menus[index].flag
-					this.menus[1].flag = false
-				} else {
-					this.menus[1].flag = false
-					this.menus[5].flag = false
-				}
-			},
-			leave () {
-				this.menus[1].flag = false
-				this.menus[5].flag = false
+
+				this.$router.push({name: name, params})
 			},
 			load () {
 				this.Service.getBaseData('Web_Index_GetData').then(res => {
@@ -217,6 +151,9 @@
 				})
 			}
 		},
+		created () {
+			this.activeKey = this.$route.name
+		},
 		mounted () {
 			this.load()
 		}
@@ -224,22 +161,30 @@
 </script>
 
 <style lang="less" scoped>
-	.header {
+	.header-wrap {
 		background: #282830;
 		position: fixed;
 		width: 100%;
-		/*padding: 0.08rem 0;*/
+		padding: 0.08rem 0;
 		-webkit-transition: 0.3s;
 		-moz-transition: 0.3s;
 		transition: 0.3s;
 		-webkit-animation: gupIn 1s 0.1s both;
 		-moz-animation: gupIn 1s 0.1s both;
 		animation: gupIn 1s 0.1s both;
-		z-index: 8888;
+		z-index: 2000;
 		top: 0;
 
-		.wrapper {
+		.pc-wrapper {
+			width: 1300px;
+			margin: 0 auto;
 			display: flex;
+			justify-content: space-between;
+			position: relative;
+			align-items: center;
+		}
+		.mob-wrapper {
+			display: none;
 			justify-content: space-between;
 			position: relative;
 			align-items: center;
@@ -247,7 +192,6 @@
 
 		.logo {
 			float: left;
-
 			img {
 				height: 0.4rem;
 			}
@@ -255,334 +199,145 @@
 
 		.nav {
 			float: right;
+		}
 
-			.navico {
-				width: 0.45rem;
-
-				img {
-					height: 0.39rem;
-				}
+		.pc-tel {
+			display: block;
+			width: 155px;
+			img {
+				width: 20px;
+				height: 20px;
+				vertical-align: text-bottom;
 			}
-
-			.homeico {
-				img {
-					height: 0.5rem;
-					margin-right: 0.46rem;
-				}
+			span {
+				font-size: 0.16rem;
+				color: #fff;
+				cursor: default;
+				padding: 0 0.1rem;
+			}
+		}
+		.register {
+			flex: 0.3;
+			white-space: nowrap;
+			span, a {
+				display: inline-block;
+				font-size: 0.16rem;
+				color: #ffffff;
+				cursor: pointer;
+				padding: 0px;
+			}
+			a {
+				margin-left: 10px;
 			}
 		}
 
-		@media (min-width: 751px) {
-			.list3{
-				right: 5.8rem;
-				width: 7rem;
-				height: 90vh;
-			}
-			.list33{
-				right: -1.5rem;
-				width: 115%;
-				height: 90vh;
-			}
-			.list4{
-				right: -1.95rem;
-				height: 90vh;
-			}
-			.list5{
-				right: 1.17rem;
-				width: 4rem;
-				height: 90vh;
-			}
-			.plane {
-				display: none;
-			}
-
-			.hidden {
-				display: none;
-			}
-
-			li {
-				float: left;
+		li {
+			line-height: 0.68rem;
+			height: 0.68rem;
+			> div.el-submenu__title {
 				line-height: 0.68rem;
 				height: 0.68rem;
 			}
-
-			span {
-				font-size: 0.18rem;
-				color: #fff;
-				cursor: pointer;
-				padding: 0 0.22rem;
-			}
-		}
-		
-		.abloutMingKe_ul,
-		.abloutMingKe_ul1 {
-			width: 1.8rem;
-			position: absolute;
-			left: -0.8rem;
-			transition: all .3s ease 0s;
-			min-height: 1.5rem;
-			padding-bottom: 0.2rem;
-			background-color: #212020;
-			z-index: 999;
-
-			li {
-				width: 100%;
-				float: none;
-				color: #fff;
-				font-size: 0.14rem;
-				padding: 0 0.22rem;
-				line-height: 0.29rem;
-				height: 0.29rem;
-			}
-
-			li:last-child {
-				text-align: right;
-			}
-
-			li:hover {
-				opacity: 0.8;
-				cursor: pointer;
-			}
-		}
-
-		.abloutMingKe_ul1 {
-			width: 1.9rem;
-			margin-left: 1.8rem;
-		}
-
-		.abloutMingKe_ul {
-			border-right: 1px solid #999999;
-
-			li:last-child {
-				// margin-top: .3rem;
-				text-align: right;
-			}
-		}
-
-		.abloutMingKe_ul2 {
-			width: 1.16rem;
-			height: 1.3rem;
-			position: absolute;
-			top:-0.08rem;
-			transition: all .3s ease 0s;
-			background-color: #212020;
-
-			li {
-				width: 100%;
-				float: none;
-				color: #fff;
-				font-size: 0.14rem;
-				padding: 0 0.22rem;
-				line-height: 0.29rem;
-				height: 0.29rem;
-				text-align: center;
-			}
-
-			li:hover {
-				cursor: pointer;
-				opacity: 0.8;
-			}
 		}
 	}
 
-	@media (max-width: 750px) and (min-width: 0) {
-		.title_s {
-			font-size: 0.35rem;
-			width: 100%;
-			padding-left: 42%;
-		}
-		.header .logo img {
-			height: 0.55rem;
-		}
-
-		.plane {
-			display: block;
-			height: 100%;
-			background-color: #282830;
-			padding: 0.3rem 0 1rem;
-			overflow-y: scroll;
-		}
-
-		.nav_ul {
-			display: none;
-		}
-
-		.header {
-			// height: 100%;
-			// background-color: #303030;
-			padding-bottom: 0.2rem;
-		}
-
-		.h_height {
-			height: 100%;
-		}
-
-		.h_none {
-			display: none;
-		}
-
-		.header .wrapper {
-			padding-top: 0.3rem;
-		}
-
-		.header .abloutMingKe_ul2 {
-			width: auto;
-			height: auto;
-		}
-
-		.header .abloutMingKe_ul2 li {
-			background-color: black;
-			height: 0.5rem;
-			line-height: 0.5rem;
-		}
-
-		.header .nav .nav_ul {
-			position: fixed;
-			width: 100%;
-			left: -10rem;
-			top: 1.29rem;
-			bottom: 0;
-			background: #212020;
-			z-index: 8888;
-			height: auto;
-
-			>li {
-				text-align: center;
-				float: none;
-				text-align: center;
-				line-height: inherit;
-				height: auto;
-
+	@media (max-width: 1366px) and (min-width: 750px) {
+		.header-wrap {
+			.pc-wrapper {
+				width: 90%;
+			}
+			.pc-tel {
+				img {
+					width: 18px;
+					height: 18px;
+				}
 				span {
-					display: block;
-					font-size: 0.42rem;
-					border-bottom: 1px solid #fff;
-					color: #fff;
-					padding: 0.44rem 0;
+					font-size: 0.15rem;
 				}
 			}
-
-			>li:first-child {
-				display: none;
+			.register {
+				span, a {
+					font-size: 0.15rem;
+				}
 			}
 		}
-		.header .nav .navico,
-		.header .nav .homeico {
-			display: inline-block;
-			padding: 0;
-		}
-		.abloutMingKe_ul,
-		.abloutMingKe_ul1 {
-			background: #303030;
-
-			li {
-				border: none;
-				padding: .2rem .6rem .2rem 1rem;
-				text-align: left;
-				color: #7C7C7C;
-			}
-
-			li:first-child {
-				color: #fff;
-			}
-
-			li:last-child {
-				text-align: right;
-			}
-		}
-
-		.abloutMingKe_ul {
-			border-bottom: #fff 1px solid;
-		}
-
-		.menu2 {
-			text-align: center;
-			line-height: 0.75rem;
-			font-size: 0.32rem;
-		}
-
-		.menu3 {
-			line-height: 0.75rem;
-			padding-left: 30%;
-			color: #7C7C7C;
-			font-size: 0.32rem;
-
-			img {
-				width: 0.2rem;
-				margin-top: -0.06rem;
-				margin-left: 0.2rem;
-			}
-		}
-		.menu3.active {
-			color: #ffffff;
-		}
-		.more {
-			float: right;
-			padding-right: 0.5rem;
-			margin-bottom: 0.1rem;
-		}
-	}
-	.list1 {
-		display: flex;
-		opacity: 0;
-		height: auto;
-		width: 5rem;
-		position: absolute;
-		top: 0.65rem;
-		right: 0;
-	}
-	.list2 {
-		opacity: 0;
-		width: 2rem;
-		height: auto;
-		position: absolute;
-		top: 0.76rem;
-		right: -0.84rem;
-	}
-	.active {
-		opacity: 1;
-	}
-	.active1 {
-		background: #212020;
-	}
-</style>
-<style>
-	.el-collapse {
-		border-top: 0;
-	}
-
-	.el-collapse-item__header {
-		height: 1.1rem;
-		line-height: 1.1rem;
-		background-color: #303030;
-		border-color: darkgray;
-		color: #fff;
-	}
-
-	.el-collapse-item__content {
-		background-color: #303030;
-		color: #fff;
-	}
-
-	.el-collapse-item__wrap {
-		border-color: darkgray;
-	}
-
-	.el-collapse-item__arrow {
-		margin-right: 2rem;
-	}
-
-	.el-collapse-item__header.is-active {
-		background-color: #49A2DD;
-	}
-
-	.el-collapse-item__content {
-		padding-bottom: 0;
 	}
 
 	@media (max-width: 750px) and (min-width: 0) {
-		.el_coll .el-collapse-item__arrow {
-			display: none;
+		.header-wrap {
+			.pc-wrapper {
+				display: none;
+			}
+			.mob-wrapper {
+				display: flex;
+				padding-top: .3rem;
+				width: 94%;
+				margin: 0 auto;
+			}
+
+			.logo img {
+				height: 0.55rem;
+			}
+			.nav {
+				flex: 1;
+				text-align: right;
+				.navico {
+					display: inline-block;
+					padding: 0;
+					width: 0.45rem;
+					img {
+						height: 0.35rem;
+					}
+				}
+				.homeico {
+					display: inline-block;
+					padding: 0;
+					img {
+						height: 0.45rem;
+						margin-right: 0.4rem;
+					}
+				}
+			}
+			.register {
+				text-align: right;
+				span {
+					font-size: 0.3rem;
+				}
+			}
+			li {
+				height: unset;
+				line-height: unset;
+			}
+			.mob-menu > .el-menu > li {
+				border-bottom: 1px solid #ffffff;
+				> div.simple {
+					height: 56px;
+					line-height: 56px;
+				}
+				> a {
+					display: inline-block;
+					height: 56px;
+					line-height: 56px;
+				}
+				> div.el-submenu__title {
+					height: 56px;
+    			line-height: 56px;
+				}
+			}
+			.mob-menu {
+				position: fixed;
+				top: 1rem;
+				left: 0px;
+				right: 0px;
+				bottom: 0px;
+				background-color: #282830;
+				overflow-y: auto;
+				padding-bottom: 50px;
+			}
+		}
+
+		.header-wrap {
+			padding-bottom: 0.2rem;
 		}
 	}
 </style>

--
Gitblit v1.8.0