Jelajahi Sumber

Merge branch 'master' of http://192.168.0.115:3000/lanxin/Chengzhebei into master

shaogen1995 1 bulan lalu
induk
melakukan
a1ee7fc36b

TEMPAT SAMPAH
public/Beizhongshijie/Build/Build.data.unityweb


TEMPAT SAMPAH
public/Beizhongshijie/Build/Build.framework.js.unityweb


TEMPAT SAMPAH
public/Beizhongshijie/Build/Build.wasm.unityweb


+ 1 - 1
public/Beizhongshijie/unityExport.js

@@ -3,4 +3,4 @@ window.onClickMainHotspot = function(hotspotName){
     if (window.parent && window.parent !== window) {
         window.parent.onClickMainHotspot(hotspotName);
     }
-}
+}

+ 0 - 318
public/Settings.json

@@ -1,318 +0,0 @@
-{
-  "panels": [
-    {
-      "name": "DefaultVirtualCamera",
-      "cameraOrthographicSize": 7,
-      "viewportX": 0,
-      "offset": -6.5,
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "Panel1Camera",
-      "cameraOrthographicSize": 7,
-      "viewportX": 0,
-      "offset": -6.5,
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "Panel2Camera",
-      "cameraOrthographicSize": 7,
-      "viewportX": 0,
-      "offset": -9,
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "Panel3Camera",
-      "cameraOrthographicSize": 9,
-      "viewportX": 0,
-      "offset": -10,
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "Panel4Camera",
-      "cameraOrthographicSize": 6.4,
-      "viewportX": 0,
-      "offset": -7.5,
-      "position": {
-          "y": 6,
-          "z": -50
-        },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": 0,
-          "z": 0
-        }
-      },
-      "rotationNotAllowed": true
-    },
-    {
-      "name": "Panel5Camera",
-      "cameraOrthographicSize": 9,
-      "viewportX": 0.5,
-      "offset": 0,
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    }
-  ],
-  "hotspots": [
-    {
-      "name": "佛龛",
-      "camera": {
-         "cameraOrthographicSize": 5,
-        "viewportX": 0.5,
-        "offset": -2,
-        "position": {
-          "y": 0.8,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "佛像",
-      "camera": {
-        "cameraOrthographicSize": 5,
-        "viewportX": 0.5,
-        "offset": -2,
-        "position": {
-          "y": 0,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "佛龛两侧",
-      "camera": {
-         "cameraOrthographicSize": 5.4,
-        "viewportX": 0.5,
-        "offset": -2.6,
-        "position": {
-          "y": 0,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "佛龛上部",
-      "camera": {
-        "cameraOrthographicSize": 5,
-        "viewportX": 0.5,
-        "offset": -2.4,
-        "position": {
-          "y": 2,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "佛龛下部",
-      "camera": {
-        "cameraOrthographicSize": 5,
-        "viewportX": 0.5,
-        "offset": -2.4,
-        "position": {
-          "y": -4.5,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -180,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "畏兽",
-      "camera": {
-        "cameraOrthographicSize": 4,
-        "viewportX": 0.5,
-        "offset": -1.2,
-        "position": {
-          "y": 2,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -90,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "飞天",
-      "camera": {
-         "cameraOrthographicSize": 4,
-        "viewportX": 0.5,
-        "offset": -1.4,
-        "position": {
-          "y": -1.5,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -90,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "摩尼宝珠",
-      "camera": {
-         "cameraOrthographicSize": 4,
-        "viewportX": 0.5,
-        "offset": -1.4,
-        "position": {
-          "y": -3,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": -90,
-          "z": 0
-        }
-      }
-    }
-  ],
-  "inscriptions": [
-    {
-      "name": "碑额",
-      "camera": {
-        "cameraOrthographicSize": 2,
-        "viewportX": 0,
-        "offset": 0,
-        "position": {
-          "y": 4.4,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": 0,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "碑文1",
-      "camera": {
-        "cameraOrthographicSize": 2,
-        "viewportX": 0,
-        "offset": 0,
-        "position": {
-          "y": 3.6,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": 0,
-          "z": 0
-        }
-      }
-    },{
-      "name": "碑文2",
-      "camera": {
-        "cameraOrthographicSize": 7,
-        "viewportX": 0,
-        "offset": -8,
-        "position": {
-          "y": 0,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": 0,
-          "z": 0
-        }
-      }
-    },
-    {
-      "name": "碑文3",
-      "camera": {
-        "cameraOrthographicSize": 7,
-        "viewportX": 0,
-        "offset": -8,
-        "position": {
-          "y": 0,
-          "z": -50
-        }
-      },
-      "model": {
-        "rotation": {
-          "x": 0,
-          "y": 0,
-          "z": 0
-        }
-      }
-    }
-  ]
-}

TEMPAT SAMPAH
src/assets/img/A6_ffhy_btn1.png


TEMPAT SAMPAH
src/assets/img/A6_ffhy_btn2.png


+ 2 - 4
src/components/Skip/index.module.scss

@@ -14,7 +14,7 @@
   opacity: 0;
   pointer-events: none;
   transition: all 0.3s;
-  z-index: 99;
+  z-index: 1;
 
   :global {
     .skipTxt {
@@ -43,11 +43,9 @@
       height: 30px;
     }
   }
-
 }
 
-
 .SkipShow {
   opacity: 1;
   pointer-events: auto;
-}
+}

+ 6 - 5
src/pages/A0base/index.module.scss

@@ -4,7 +4,6 @@
   background-color: #ccc;
   position: relative;
 
-
   :global {
     .A0baseContainner {
       width: 58%;
@@ -13,7 +12,9 @@
       z-index: 1;
       top: 50%;
       right: 0;
-      transform: translateY(-55%);
+      transform: translateY(-55%) translateZ(0);
+      z-index: 999; /* 适当提高数值,避免和其他加速层冲突 */
+      will-change: z-index; /* 提示浏览器优化层级渲染 */
       display: flex;
       justify-content: space-between;
       align-items: center;
@@ -184,12 +185,12 @@
       color: rgba(177, 150, 123, 1);
       cursor: pointer;
 
-      &>img {
+      & > img {
         width: 44px;
         object-fit: cover;
       }
 
-      &>.guideVideoTitle {
+      & > .guideVideoTitle {
         height: 12px;
         line-height: 8px;
         font-weight: 500;
@@ -262,4 +263,4 @@
       }
     }
   }
-}
+}

+ 2 - 2
src/pages/A6ybwx/A6_1_zxys/index.tsx

@@ -5,7 +5,7 @@ import { isPc } from '@/utils/http'
 import classNames from 'classnames'
 import { useSelector } from 'react-redux'
 
-function Zaoxiang() {
+function Zaoxiang({ setGotopage }: { setGotopage: (page: number) => void }) {
 
   const { myData } = useSelector((state: RootState) => state.A0Layout)
 
@@ -22,7 +22,7 @@ function Zaoxiang() {
   }
   return (
     <div className={classNames(styles.Zaoxiang, isPc ? '' : styles.ZaoxiangMo)}>
-      <div className='back' onClick={() => window.location.replace('#/ybwx?tab=1')}>
+      <div className='back' onClick={() => setGotopage(0)}>
         <img src={require('@/assets/img/btn_back.png')} alt='' />
       </div>
       <div className='title'>

+ 2 - 2
src/pages/A6ybwx/A6_2_zxzgh/index.module.scss

@@ -58,7 +58,7 @@
       }
     }
 
-    .text {
+    .Stext {
       position: absolute;
       top: 36%;
       left: 50%;
@@ -549,7 +549,7 @@
       .location {
         color: rgba(175, 135, 100, 1);
       }
-      .text {
+      .Cardtext {
         color: rgba(93, 96, 96, 1);
       }
       .from {

+ 98 - 98
src/pages/A6ybwx/A6_2_zxzgh/index.tsx

@@ -1,4 +1,4 @@
-import React, { useState, useRef } from 'react'
+import React, { useState, useRef, useEffect } from 'react'
 import styles from './index.module.scss'
 import { useSelector } from 'react-redux'
 import { RootState } from '@/store'
@@ -17,7 +17,7 @@ type showLineType = {
   isShow: boolean
 }[]
 
-function Sinicize() {
+function Sinicize({ setGotopage }: { setGotopage: (page: number) => void }) {
   const { myData } = useSelector((state: RootState) => state.A0Layout)
 
   const [currentTab, setCurrentTab] = useState(0)
@@ -126,7 +126,7 @@ function Sinicize() {
             setIsShowLine(
               isShowLine.map(item => ({
                 ...item,
-                isShow: item.index === index ? true : item.isShow
+                isShow: item.index === index + 1 ? true : item.isShow
               }))
             )
           }
@@ -139,7 +139,7 @@ function Sinicize() {
         <div className='main'>
           <div className='time'>{time}</div>
           <div className='location'>{location}</div>
-          <div className='text'>{text}</div>
+          <div className='Cardtext'>{text}</div>
           <div className='from'>{from}</div>
         </div>
       </div>
@@ -157,13 +157,13 @@ function Sinicize() {
       >
         <div className='SinicizeScroll'>
           <div ref={sinicize1Ref} className={styles.Sinicize1}>
-            <div className='back' onClick={() => window.location.replace('#/ybwx?tab=1')}>
+            <div className='back' onClick={() => setGotopage(0)}>
               <img src={require('@/assets/img/btn_back.png')} alt='' />
             </div>
             <div className='title'>
               <img src={require('@/assets/img/A6_sinicize_title.png')} draggable='false' alt='' />
             </div>
-            <div className='text'>
+            <div className='Stext'>
               <div className='line1'>
                 <img src={require('@/assets/img/A6_sinicize_line2.png')} draggable='false' alt='' />
               </div>
@@ -241,108 +241,108 @@ function Sinicize() {
 
                   </div>
 
-                  <div className={`${selectedTime === index ? 'detailShow' : 'detailHide'}`}>
-                    {selectedTime === index && (
-                      <>
-                        <div className='left'>
-                          <div className='lTop'>{sItem.desc}</div>
-                          <div className='lContent'>
-                            <div className='lImgBox'>
-                              {/* <img
+                  <div id='sinicizeDetail' className={`${selectedTime === index ? 'detailShow' : 'detailHide'}`}>
+                    {/* {selectedTime === index && ( */}
+                    <>
+                      <div className='left'>
+                        <div className='lTop'>{sItem.desc}</div>
+                        <div className='lContent'>
+                          <div className='lImgBox'>
+                            {/* <img
                             src={isShowLine ? sItem.imgItems[0].srcLine : sItem.imgItems[0].src}
                             alt=''
                           /> */}
-                              <div
-                                style={{
-                                  backgroundImage: `url(${isShowLine[0].isShow
-                                    ? sItem.imgItems[0].srcLine
-                                    : sItem.imgItems[0].src
-                                    })`
-                                }}
-                                className={`pic ${isShowLine[0].isShow ? 'picLine' : ''}`}
+                            <div
+                              style={{
+                                backgroundImage: `url(${isShowLine[0]?.isShow
+                                  ? sItem.imgItems[0].srcLine
+                                  : sItem.imgItems[0].src
+                                  })`
+                              }}
+                              className={`pic ${isShowLine[0]?.isShow ? 'picLine' : ''}`}
+                            />
+                            {!isShowLine[0]?.isShow ? (
+                              <InfoCard
+                                time={sItem.imgItems[0].time}
+                                location={sItem.imgItems[0].title}
+                                text={sItem.imgItems[0].txt}
+                                from={sItem.imgItems[0].title}
+                                index={0}
                               />
-                              {!isShowLine[0].isShow ? (
-                                <InfoCard
-                                  time={sItem.imgItems[0].time}
-                                  location={sItem.imgItems[0].title}
-                                  text={sItem.imgItems[0].txt}
-                                  from={sItem.imgItems[0].title}
-                                  index={0}
-                                />
-                              ) : (
-                                <div
-                                  className='point'
-                                  onClick={() =>
-                                    setIsShowLine(
-                                      isShowLine.map(item => ({
-                                        ...item,
-                                        isShow: item.index === 0 ? false : item.isShow
-                                      }))
-                                    )
-                                  }
-                                >
-                                  <div className='pointTime'>{sItem.imgItems[0].time}</div>
-                                  <div className='pointTitle'>{sItem.imgItems[0].title}</div>
-                                </div>
-                              )}
-                            </div>
-                            <div className='lInfo'>
-                              {sItem.items.map((i, index) => (
-                                <div className='item' key={index}>
-                                  <div className='lTitle'>{i.title}</div>
-                                  <div className='lText'>{i.txt}</div>
-                                </div>
-                              ))}
-                            </div>
+                            ) : (
+                              <div
+                                className='point'
+                                onClick={() =>
+                                  setIsShowLine(
+                                    isShowLine.map(item => ({
+                                      ...item,
+                                      isShow: item.index === 0 ? false : item.isShow
+                                    }))
+                                  )
+                                }
+                              >
+                                <div className='pointTime'>{sItem.imgItems[0].time}</div>
+                                <div className='pointTitle'>{sItem.imgItems[0].title}</div>
+                              </div>
+                            )}
+                          </div>
+                          <div className='lInfo'>
+                            {sItem.items.map((i, index) => (
+                              <div className='item' key={index}>
+                                <div className='lTitle'>{i.title}</div>
+                                <div className='lText'>{i.txt}</div>
+                              </div>
+                            ))}
                           </div>
                         </div>
-                        <div className='right'>
-                          <div className='RItems'>
-                            {sItem.imgItems
-                              .filter((i, index) => index !== 0)
-                              .map((i, index2) => (
-                                <div className='item' key={index2}>
-                                  {/* <div className='pic'>
+                      </div>
+                      <div className='right'>
+                        <div className='RItems'>
+                          {sItem.imgItems
+                            .filter((i, index) => index !== 0)
+                            .map((i, index2) => (
+                              <div className='item' key={index2}>
+                                {/* <div className='pic'>
                               <img src={i.src} alt='' />
                             </div> */}
-                                  <div
-                                    style={{
-                                      backgroundImage: `url(${isShowLine[index2 + 1].isShow ? i.srcLine : i.src
-                                        })`
-                                    }}
-                                    className={`pic ${isShowLine[index2 + 1].isShow ? 'picLine' : ''
-                                      }`}
+                                <div
+                                  style={{
+                                    backgroundImage: `url(${isShowLine[index2 + 1]?.isShow ? i.srcLine : i.src
+                                      })`
+                                  }}
+                                  className={`pic ${isShowLine[index2 + 1]?.isShow ? 'picLine' : ''
+                                    }`}
+                                />
+                                {!isShowLine[index2 + 1]?.isShow ? (
+                                  <InfoCard
+                                    time={i.time}
+                                    location={i.title}
+                                    text={i.txt}
+                                    from={i.title}
+                                    index={index2}
                                   />
-                                  {!isShowLine[index2 + 1].isShow ? (
-                                    <InfoCard
-                                      time={i.time}
-                                      location={i.title}
-                                      text={i.txt}
-                                      from={i.title}
-                                      index={index2}
-                                    />
-                                  ) : (
-                                    <div
-                                      className='point'
-                                      onClick={() =>
-                                        setIsShowLine(
-                                          isShowLine.map(item => ({
-                                            ...item,
-                                            isShow: item.index === index2 + 1 ? false : item.isShow
-                                          }))
-                                        )
-                                      }
-                                    >
-                                      <div className='pointTime'>{i.time}</div>
-                                      <div className='pointTitle'>{i.title}</div>
-                                    </div>
-                                  )}
-                                </div>
-                              ))}
-                          </div>
+                                ) : (
+                                  <div
+                                    className='point'
+                                    onClick={() =>
+                                      setIsShowLine(
+                                        isShowLine.map(item => ({
+                                          ...item,
+                                          isShow: item.index === index2 + 1 ? false : item.isShow
+                                        }))
+                                      )
+                                    }
+                                  >
+                                    <div className='pointTime'>{i.time}</div>
+                                    <div className='pointTitle'>{i.title}</div>
+                                  </div>
+                                )}
+                              </div>
+                            ))}
                         </div>
-                      </>
-                    )}
+                      </div>
+                    </>
+                    {/* )} */}
                   </div>
                 </div>
               ))}

+ 12 - 3
src/pages/A6ybwx/StatueArt/index.tsx

@@ -1,9 +1,13 @@
-import React from 'react'
+import React, { useState } from 'react'
 import styles from './index.module.scss'
 import classNames from 'classnames'
 import { isPc } from '@/utils/http'
+import Sinicize from '../A6_2_zxzgh/index'
+import Zaoxiang from '../A6_1_zxys/index'
 
 function StatueArt({ setGotoTab }: { setGotoTab: (tab: number) => void }) {
+
+  const [gotopage, setGotopage] = useState(0)
   return (
     <div className={classNames(styles.StatueArt, isPc ? '' : styles.StatueArtMo)}>
       <div className='back' onClick={() => setGotoTab(0)}>
@@ -15,13 +19,18 @@ function StatueArt({ setGotoTab }: { setGotoTab: (tab: number) => void }) {
       <div className="text">
         两汉之际,佛教传入中原,开始出现以金铜、石刻佛像形式宣传佛教神祇和经典的活动。魏晋南北朝时期,随着佛教的发展,佛教造像行为达到顶峰,皇家石窟如云冈石窟、龙门石窟相继开凿,石塔、造像碑、单体造像、背屏式造像等石刻表现形式多样,并随着社会发展呈现出不同的社会物质面貌。
       </div>
-      <div className='ffhybtn1' onClick={() => window.location.replace('#/zxys')}>
+      <div className='ffhybtn1' onClick={() => setGotopage(1)}>
         <img src={require('@/assets/img/A6_ffhy_btn1.png')} draggable={false} alt='' />
       </div>
-      <div className='ffhybtn2' onClick={() => window.location.replace('#/sinicize')}>
+      <div className='ffhybtn2' onClick={() => setGotopage(2)}>
         <img src={require('@/assets/img/A6_ffhy_btn2.png')} draggable={false} alt='' />
       </div>
+
+      {gotopage === 2 && <Sinicize setGotopage={setGotopage} />}
+      {gotopage === 1 && <Zaoxiang setGotopage={setGotopage} />}
     </div>
+
+
   )
 }