|
@@ -8,61 +8,6 @@ import history from '@/utils/history'
|
|
|
import { domDelOwnFu } from '@/utils/utilsSome'
|
|
|
|
|
|
function A1home() {
|
|
|
- // 有关序列帧动画
|
|
|
- const [pageSize, setPageSize] = useState({
|
|
|
- width: 0,
|
|
|
- height: 0
|
|
|
- })
|
|
|
-
|
|
|
- const timerr = useRef(-1)
|
|
|
-
|
|
|
- const pageSizeChange = useCallback(() => {
|
|
|
- const width = document.documentElement.clientWidth
|
|
|
- const height = document.documentElement.clientHeight
|
|
|
-
|
|
|
- setPageSize({
|
|
|
- width: width,
|
|
|
- height: height
|
|
|
- })
|
|
|
-
|
|
|
- // 看看是否已经插入的 script
|
|
|
- const ruDom = document.querySelector('#myStyle')
|
|
|
- if (ruDom) ruDom.remove()
|
|
|
- clearTimeout(timerr.current)
|
|
|
-
|
|
|
- timerr.current = window.setTimeout(() => {
|
|
|
- const zhen = 144
|
|
|
-
|
|
|
- // console.log(imgWidth, imgWidth / num);
|
|
|
- const styleStr = `.A1move img {
|
|
|
- animation: tab2MoveImg 1s steps(${zhen}) infinite;
|
|
|
- }
|
|
|
- @keyframes tab2MoveImg {
|
|
|
- 100% {
|
|
|
- left: -${width * zhen}px;
|
|
|
- }
|
|
|
- }`
|
|
|
- const styletDom = document.createElement('style')
|
|
|
- styletDom.type = 'text/css'
|
|
|
- styletDom.id = 'myStyle'
|
|
|
- styletDom.innerHTML = styleStr
|
|
|
- document.querySelector('html')?.appendChild(styletDom)
|
|
|
- }, 100)
|
|
|
- }, [])
|
|
|
-
|
|
|
- useEffect(() => {
|
|
|
- // pageSizeChange()
|
|
|
-
|
|
|
- setTimeout(() => {
|
|
|
- pageSizeChange()
|
|
|
- }, 1000)
|
|
|
-
|
|
|
- window.addEventListener('resize', pageSizeChange, false)
|
|
|
- return () => {
|
|
|
- window.removeEventListener('resize', pageSizeChange)
|
|
|
- }
|
|
|
- }, [pageSizeChange])
|
|
|
-
|
|
|
const { dataUrlSame } = useDataUrl()
|
|
|
|
|
|
const { touchstart, touchmove, touchend } = useMove()
|
|
@@ -78,6 +23,13 @@ function A1home() {
|
|
|
clearInterval(timeRR.current)
|
|
|
timeRR.current = window.setInterval(() => {
|
|
|
if (loding >= 100) {
|
|
|
+ setMoveImgShow(false)
|
|
|
+
|
|
|
+ setTimeout(() => {
|
|
|
+ const ruDom = document.querySelector('#myStyle')
|
|
|
+ if (ruDom) ruDom.remove()
|
|
|
+ }, 3000)
|
|
|
+
|
|
|
clearInterval(timeRR.current)
|
|
|
return
|
|
|
}
|
|
@@ -87,8 +39,6 @@ function A1home() {
|
|
|
|
|
|
// 点击开始
|
|
|
const btnStartFu = useCallback(() => {
|
|
|
- window.removeEventListener('resize', pageSizeChange)
|
|
|
-
|
|
|
setLoding(110)
|
|
|
// 自动播放视频
|
|
|
setTimeout(() => {
|
|
@@ -101,7 +51,7 @@ function A1home() {
|
|
|
setTimeout(() => {
|
|
|
domDelOwnFu('.A1base')
|
|
|
}, 500)
|
|
|
- }, [pageSizeChange])
|
|
|
+ }, [])
|
|
|
|
|
|
const [ind, setInd] = useState(0)
|
|
|
|
|
@@ -151,6 +101,39 @@ function A1home() {
|
|
|
}, 500)
|
|
|
}, [])
|
|
|
|
|
|
+ // 有关序列帧
|
|
|
+ const A1BfloorRef = useRef<HTMLImageElement>(null)
|
|
|
+
|
|
|
+ const [moveImgShow, setMoveImgShow] = useState(true)
|
|
|
+
|
|
|
+ useEffect(() => {
|
|
|
+ // 看看是否已经插入的 script
|
|
|
+ const ruDom = document.querySelector('#myStyle')
|
|
|
+ if (ruDom) ruDom.remove()
|
|
|
+ const styleStr = `.A1Bll {
|
|
|
+ animation: A1BllMove1 8s infinite linear;
|
|
|
+ }
|
|
|
+ @keyframes A1BllMove1 {
|
|
|
+ 100% {
|
|
|
+ left: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .A1Brr {
|
|
|
+ animation: A1BllMove2 8s infinite linear;
|
|
|
+ }
|
|
|
+ @keyframes A1BllMove2 {
|
|
|
+ 100% {
|
|
|
+ right: 0;
|
|
|
+ }
|
|
|
+ `
|
|
|
+ const styletDom = document.createElement('style')
|
|
|
+ styletDom.type = 'text/css'
|
|
|
+ styletDom.id = 'myStyle'
|
|
|
+ styletDom.innerHTML = styleStr
|
|
|
+ document.querySelector('html')?.appendChild(styletDom)
|
|
|
+ }, [])
|
|
|
+
|
|
|
return (
|
|
|
<div className={styles.A1home}>
|
|
|
{/* 初始加载画面 */}
|
|
@@ -158,27 +141,36 @@ function A1home() {
|
|
|
className={classNames('A1base', loding === 110 ? 'A1baseHide' : '')}
|
|
|
style={{ backgroundImage: `url(${dataUrlSame}${myData.home.bgImg})` }}
|
|
|
>
|
|
|
- <img src={`${dataUrlSame}home/logo.png`} alt='' />
|
|
|
+ <img className='A1Vlogo' src={`${dataUrlSame}home/logo.png`} alt='' />
|
|
|
{loding >= 100 ? (
|
|
|
<div className='A1loding A1lodingBtn' onClick={btnStartFu}>
|
|
|
<img src={`${dataUrlSame}visit/btn.png`} alt='' />
|
|
|
<div>开始</div>
|
|
|
</div>
|
|
|
) : (
|
|
|
- <div className='A1loding'>{loding}%</div>
|
|
|
+ <div className='A1loding sizeNo'>{loding}%</div>
|
|
|
)}
|
|
|
|
|
|
{/* 序列帧动画 */}
|
|
|
- {/* 1688x335 */}
|
|
|
- {pageSize.width ? (
|
|
|
- <div className='A1move'>
|
|
|
- <img
|
|
|
- src={`${dataUrlSame}home/move.png`}
|
|
|
- style={{ height: (pageSize.width / 1688) * 335 }}
|
|
|
- alt=''
|
|
|
- />
|
|
|
- </div>
|
|
|
- ) : null}
|
|
|
+
|
|
|
+ {/* 底部颜色条 */}
|
|
|
+ <img ref={A1BfloorRef} className='A1Bfloor' src={`${dataUrlSame}home/floor.png`} alt='' />
|
|
|
+
|
|
|
+ {/* 底部房子 */}
|
|
|
+ <img className='A1Broom' src={`${dataUrlSame}home/home.png`} alt='' />
|
|
|
+
|
|
|
+ {/* 左右小人 */}
|
|
|
+ <img
|
|
|
+ className={classNames('A1Bll', moveImgShow ? '' : 'A1BMoveHide')}
|
|
|
+ src={`${dataUrlSame}home/left.png`}
|
|
|
+ alt=''
|
|
|
+ />
|
|
|
+
|
|
|
+ <img
|
|
|
+ className={classNames('A1Brr', moveImgShow ? '' : 'A1BMoveHide')}
|
|
|
+ src={`${dataUrlSame}home/right.png`}
|
|
|
+ alt=''
|
|
|
+ />
|
|
|
</div>
|
|
|
|
|
|
{/* 5个动画视频 */}
|