diff --git a/src/assets/image/serviceSupport/5-1联系我们.png b/src/assets/image/serviceSupport/5-1联系我们.png old mode 100755 new mode 100644 index de664f2..c56f31c Binary files a/src/assets/image/serviceSupport/5-1联系我们.png and b/src/assets/image/serviceSupport/5-1联系我们.png differ diff --git a/src/assets/image/serviceSupport/5-1联系我们1.png b/src/assets/image/serviceSupport/5-1联系我们1.png new file mode 100755 index 0000000..de664f2 Binary files /dev/null and b/src/assets/image/serviceSupport/5-1联系我们1.png differ diff --git a/src/assets/image/serviceSupport/5-2加入我们.png b/src/assets/image/serviceSupport/5-2加入我们.png old mode 100755 new mode 100644 index cdd88f4..f45fb90 Binary files a/src/assets/image/serviceSupport/5-2加入我们.png and b/src/assets/image/serviceSupport/5-2加入我们.png differ diff --git a/src/assets/image/serviceSupport/5-2加入我们1.png b/src/assets/image/serviceSupport/5-2加入我们1.png new file mode 100755 index 0000000..cdd88f4 Binary files /dev/null and b/src/assets/image/serviceSupport/5-2加入我们1.png differ diff --git a/src/assets/image/serviceSupport/c7347fa0e178ce3c8bcffefbc5b71a40.png b/src/assets/image/serviceSupport/c7347fa0e178ce3c8bcffefbc5b71a40.png new file mode 100644 index 0000000..cb7b916 Binary files /dev/null and b/src/assets/image/serviceSupport/c7347fa0e178ce3c8bcffefbc5b71a40.png differ diff --git a/src/components/chat/index.vue b/src/components/chat/index.vue index 9c95bc6..2ff93b9 100644 --- a/src/components/chat/index.vue +++ b/src/components/chat/index.vue @@ -1,11 +1,11 @@ +
+
……
+
@@ -74,12 +77,24 @@ export default { .item { margin-right: 3vw; - width: calc(50% - 3vw); + width: calc(33.33% - 2vw); display: inline-block; margin-bottom: 1.4vw; vertical-align: top; position: relative; + &.ellipsisItem { + height: calc((90vw * 0.33 - 3vw) * 1080 / 1920); + display: inline-flex; + align-items: center; + justify-content: center; + } + + .ellipsis { + width: 100%; + text-align: center; + } + &:hover { .img1 { @@ -133,9 +148,9 @@ export default { cursor: pointer; } - &:nth-child(2n) { + &:nth-child(3n) { margin-right: 0; } } } - \ No newline at end of file + diff --git a/src/components/menu/index.vue b/src/components/menu/index.vue index e7a425d..a9c1b4a 100644 --- a/src/components/menu/index.vue +++ b/src/components/menu/index.vue @@ -19,7 +19,8 @@ import {listHwWebMenu, selectMenuTree} from "@/api/hwWebMenu"; const indexRoute = [ '/index', - '/newsDetail' + '/newsDetail', + '/newsList' ] const contactUsRoute = ['/contactUs'] const industrySolutionsRoute = ['/industrySolutions'] @@ -184,4 +185,3 @@ export default { } - diff --git a/src/layout/index.vue b/src/layout/index.vue index 56b1bee..dfc91d2 100644 --- a/src/layout/index.vue +++ b/src/layout/index.vue @@ -1,13 +1,13 @@ @@ -59,15 +59,51 @@ export default { }); }, toService() { - this.$router.push('/serviceSupport') + this.$refs.chat && this.$refs.chat.consultation() + }, + handleContentScroll() { + const content = document.getElementById('content') + if (!content) return + const currentTop = content.scrollTop + const direction = currentTop > this.lastScrollTop ? 'down' : 'up' + const tabs = content.querySelector('.tabs') + const tabsTouchedTop = this.isTabsTouchedTop(content, tabs) + + if (!tabsTouchedTop) { + this.topHidden = false + } else if (direction === 'down') { + this.topHidden = true + } else if (direction === 'up') { + this.topHidden = false + } + + this.lastScrollTop = currentTop + }, + isTabsTouchedTop(content, tabs) { + if (!tabs) return false + const contentRect = content.getBoundingClientRect() + const tabsRect = tabs.getBoundingClientRect() + return tabsRect.top <= contentRect.top + 1 }, }, mounted() { + const content = document.getElementById('content') + if (content) { + content.addEventListener('scroll', this.handleContentScroll, {passive: true}) + } + }, + beforeDestroy() { + const content = document.getElementById('content') + if (content) { + content.removeEventListener('scroll', this.handleContentScroll) + } }, data() { return { logo, qrcode, + topHidden: false, + lastScrollTop: 0, } } } @@ -85,6 +121,11 @@ export default { background-image: radial-gradient(transparent 1px, #fff 1px); backdrop-filter: saturate(50%) blur(4px); z-index: 2; + transition: transform 0.3s ease; + + &.hide { + transform: translateY(-100%); + } } .shadow{ position: fixed; @@ -94,7 +135,12 @@ export default { height: @top-height; box-shadow: 0 -30px 40px rgba(0, 0, 0, 0.8); z-index: 3; - pointer-events: none + pointer-events: none; + transition: transform 0.3s ease; + + &.hide { + transform: translateY(-100%); + } } .menu { @@ -139,6 +185,12 @@ export default { height: calc(100vh - @top-height); z-index: 1; overflow: auto; + transition: top 0.3s ease, height 0.3s ease; + + &.full { + top: 0; + height: 100vh; + } } .FloatingWindow { diff --git a/src/router/index.js b/src/router/index.js index eb66480..ef86da3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -23,6 +23,10 @@ export default new Router({ path: 'newsDetail', component: () => import('@/views/index/newsDetail.vue'), }, + { + path: 'newsList', + component: () => import('@/views/newsList/index.vue'), + }, { path: 'productCenter', component: () => import('@/views/productCenter/index.vue'), diff --git a/src/views/contactUs/MediaCenter.vue b/src/views/contactUs/MediaCenter.vue index 873fc54..b8444c0 100644 --- a/src/views/contactUs/MediaCenter.vue +++ b/src/views/contactUs/MediaCenter.vue @@ -1,13 +1,6 @@