diff --git a/package.json b/package.json
index 5189022..f357756 100644
--- a/package.json
+++ b/package.json
@@ -18,7 +18,8 @@
"postcss-px-to-viewport": "^1.1.1",
"swiper": "^9.0.0",
"vue": "^3.2.45",
- "vue-router": "^4.0.13"
+ "vue-router": "^4.0.13",
+ "vue3-video-play": "^1.3.1-beta.6"
},
"devDependencies": {
"@vitejs/plugin-vue": "^4.0.0",
diff --git a/src/common/utils.js b/src/common/utils.js
index e14d7ad..09c5fb0 100644
--- a/src/common/utils.js
+++ b/src/common/utils.js
@@ -3,10 +3,6 @@ const scaleFunc = (showEmpty, id, origin, scale, isLow) => {
document.querySelector(id).style['transform-origin'] = origin
}
document.querySelector(id).style.transform = `scale(${scale})`
- handleBottomFont(id, scale)
- handleImgScale(id, scale)
- handleCooperation(id, scale)
- handleContactUs(id, scale)
if (id == '#service_container') {
showEmpty.value = false
} else {
@@ -20,6 +16,10 @@ const scaleFunc = (showEmpty, id, origin, scale, isLow) => {
showEmpty.value = true
}
}
+ handleBottomFont(id, scale)
+ handleImgScale(id, scale)
+ handleCooperation(id, scale)
+ handleContactUs(id, scale)
}
export const handleScreenAuto = (showEmpty, id, origin) => {
@@ -33,6 +33,9 @@ export const handleScreenAuto = (showEmpty, id, origin) => {
if (['#case_picture', '#hardware_picture_list'].includes(id)) {
scale = ((clientHeight - 300) / 1170).toFixed(3)
}
+ if (id == '#cooperation_container') {
+ scale = ((clientHeight - 180) / 1080).toFixed(3)
+ }
scaleFunc(showEmpty, id, 'center 0', scale, false)
}
}
@@ -76,7 +79,7 @@ const handleCooperation = (id, scale) => {
})`
document.getElementById(
'contract_real_coop',
- ).style.transform = `scale(${scale})`
+ ).style.transform = `scale(${0.8})`
}
}
diff --git a/src/components/Video/index.vue b/src/components/Video/index.vue
new file mode 100644
index 0000000..f7f25ce
--- /dev/null
+++ b/src/components/Video/index.vue
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/views/Index/components/CaseDetails/index.vue b/src/views/Index/components/CaseDetails/index.vue
index c2f3f60..30330fd 100644
--- a/src/views/Index/components/CaseDetails/index.vue
+++ b/src/views/Index/components/CaseDetails/index.vue
@@ -66,6 +66,7 @@
/>
+
@@ -84,6 +85,7 @@ import { Pagination } from 'swiper'
import { case_detail_list } from '@/mock/case'
import { useDetailStore, useSwiperStore } from '@/store'
import { storeToRefs } from 'pinia'
+import Video from 'cpns/Video'
import 'swiper/css'
import 'swiper/css/pagination'
@@ -132,7 +134,7 @@ const mouseleave = function () {
width: 100%;
padding: 77px 153px 130px 153px;
.content_detail {
- height: 100%;
+ height: 576px;
width: 100%;
box-sizing: border-box;
margin-top: 30px;
@@ -141,7 +143,7 @@ const mouseleave = function () {
position: relative;
.left_swiper {
width: 1024px;
- height: 100%;
+ // height: 100%;
position: relative;
.img_swiper {
width: 100%;
@@ -190,6 +192,7 @@ const mouseleave = function () {
overflow-x: auto;
.detail_header {
position: sticky;
+ z-index: 999;
top: 0;
left: 0;
right: 0;
diff --git a/src/views/Index/components/Cooperation/index.vue b/src/views/Index/components/Cooperation/index.vue
index b204beb..cb8bd8c 100644
--- a/src/views/Index/components/Cooperation/index.vue
+++ b/src/views/Index/components/Cooperation/index.vue
@@ -34,6 +34,8 @@ const showEmpty = ref(false)
height: 100vh;
background: $common_bg;
position: relative;
+ display: flex;
+ align-items: flex-end;
.cooperation_container {
width: 100%;
height: 100%;
diff --git a/src/views/Index/components/HardwareDetails/index.vue b/src/views/Index/components/HardwareDetails/index.vue
index 2d33b8f..9a97ac8 100644
--- a/src/views/Index/components/HardwareDetails/index.vue
+++ b/src/views/Index/components/HardwareDetails/index.vue
@@ -69,6 +69,7 @@
/>
+
@@ -96,6 +97,7 @@ import CardTitle from 'cpns/CardTitle'
import Tabs from 'cpns/Tabs'
import Trumbs from 'cpns/Trumbs'
import Intro from 'cpns/Intro'
+import Video from 'cpns/Video'
const showEmpty = ref(false)
const modules = ref([Pagination])
const detailStore = useDetailStore()
@@ -131,7 +133,7 @@ const mouseleave = function () {
width: 100%;
padding: 77px 153px 130px 153px;
.content_detail {
- height: 100%;
+ height: 576px;
width: 100%;
box-sizing: border-box;
margin-top: 30px;
@@ -188,6 +190,7 @@ const mouseleave = function () {
scrollbar-width: none; /* firefox */
overflow-x: auto;
.detail_header {
+ z-index: 999;
position: sticky;
top: 0;
left: 0;
diff --git a/yarn.lock b/yarn.lock
index b9071e8..814dcd2 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1560,6 +1560,11 @@ has@^1.0.3:
dependencies:
function-bind "^1.1.1"
+hls.js@^1.0.10:
+ version "1.3.5"
+ resolved "https://registry.npmmirror.com/hls.js/-/hls.js-1.3.5.tgz#0e8b0799ecf2feb7ba199f5e95f35ba9552e04f4"
+ integrity sha512-uybAvKS6uDe0MnWNEPnO0krWVr+8m2R0hJ/viql8H3MVK+itq8gGQuIYoFHL3rECkIpNH98Lw8YuuWMKZxp3Ew==
+
hosted-git-info@^2.1.4:
version "2.8.9"
resolved "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9"
@@ -2809,6 +2814,11 @@ tempfile@^2.0.0:
temp-dir "^1.0.0"
uuid "^3.0.1"
+throttle-debounce@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-3.0.1.tgz#32f94d84dfa894f786c9a1f290e7a645b6a19abb"
+ integrity sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==
+
through@^2.3.8:
version "2.3.8"
resolved "https://registry.npmmirror.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
@@ -2974,7 +2984,16 @@ vue-router@^4.0.13:
dependencies:
"@vue/devtools-api" "^6.0.0"
-vue@^3.2.45:
+vue3-video-play@^1.3.1-beta.6:
+ version "1.3.1-beta.6"
+ resolved "https://registry.npmmirror.com/vue3-video-play/-/vue3-video-play-1.3.1-beta.6.tgz#bca3f55a11053eaa37053835e4610c04d9cc509e"
+ integrity sha512-Olrx2/LNAds7fuor/yX9ZKT9sOcwcfTt2g2YbbCrEaAmZ5Tb0hwBr5z+/CoLwELzzRzXCHPmWWoT0Wm5W/Nwpw==
+ dependencies:
+ hls.js "^1.0.10"
+ throttle-debounce "^3.0.1"
+ vue "^3.2.2"
+
+vue@^3.2.2, vue@^3.2.45:
version "3.2.47"
resolved "https://registry.npmjs.org/vue/-/vue-3.2.47.tgz"
integrity sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==