|
@@ -11,12 +11,13 @@ function Genealogy({ setGotoTab }: { setGotoTab: (tab: number) => void }) {
|
|
|
const [gestureState1, setGestureState1] = useState('')
|
|
const [gestureState1, setGestureState1] = useState('')
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
- if (!isShowIntro) setTimeout(() => {
|
|
|
|
|
- setGestureState1('state1')
|
|
|
|
|
|
|
+ if (!isShowIntro)
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
- setGestureState1('')
|
|
|
|
|
- }, 2000)
|
|
|
|
|
- }, 500)
|
|
|
|
|
|
|
+ setGestureState1('state1')
|
|
|
|
|
+ setTimeout(() => {
|
|
|
|
|
+ setGestureState1('')
|
|
|
|
|
+ }, 2000)
|
|
|
|
|
+ }, 500)
|
|
|
}, [isShowIntro])
|
|
}, [isShowIntro])
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
@@ -32,36 +33,38 @@ function Genealogy({ setGotoTab }: { setGotoTab: (tab: number) => void }) {
|
|
|
<Graph setCurrentNodeIndex={setCurrentNodeIndex} />
|
|
<Graph setCurrentNodeIndex={setCurrentNodeIndex} />
|
|
|
{/* <SvgGraph /> */}
|
|
{/* <SvgGraph /> */}
|
|
|
|
|
|
|
|
- {isShowGesture && <div className={`${styles.gesture} ${gestureState1}`} onClick={() => setIsShowGesture(false)}>
|
|
|
|
|
- <img src={require('@/assets/img/A6_gen_gesture.png')} draggable='false' alt='' />
|
|
|
|
|
- 点击查看更多
|
|
|
|
|
- </div>}
|
|
|
|
|
|
|
+ {isShowGesture && (
|
|
|
|
|
+ <div
|
|
|
|
|
+ className={`${styles.gesture} ${gestureState1}`}
|
|
|
|
|
+ onClick={() => setIsShowGesture(false)}
|
|
|
|
|
+ >
|
|
|
|
|
+ <img src={require('@/assets/img/A6_gen_gesture.png')} draggable='false' alt='' />
|
|
|
|
|
+ 点击查看更多
|
|
|
|
|
+ </div>
|
|
|
|
|
+ )}
|
|
|
|
|
|
|
|
- {
|
|
|
|
|
- isShowIntro && (
|
|
|
|
|
- <div className={styles.intro}>
|
|
|
|
|
- <div className='title'>
|
|
|
|
|
- <div className='big'>世系铭远</div>
|
|
|
|
|
- <div className='small'>程哲碑所载家族谱系</div>
|
|
|
|
|
- <div className='sun'></div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div className='line'>
|
|
|
|
|
- <img src={require('@/assets/img/A6_gen_introline.png')} draggable='false' alt='' />
|
|
|
|
|
- </div>
|
|
|
|
|
- <div className='content'>
|
|
|
|
|
- 东魏时期,北魏末年战乱虽让门阀制度略有松动,
|
|
|
|
|
- 但家族血缘依旧是社会结构的核心纽带,北魏“以姓定族”“以族定贵”的门阀传统得以延续,家族的政治地位、世系传承与宗族凝聚力成为衡量社会地位的核心标准。
|
|
|
|
|
- 程哲碑的碑文通过追溯祖先,将上党程氏家族塑造为世代簪缨的望族。
|
|
|
|
|
- 在社会动荡的背景下,以先祖攀附、郡望嫁接来重新构建地方家族门阀秩序显得意义重大,
|
|
|
|
|
- 也是这一时期地方家族巩固、提升社会地位潮流的产物。
|
|
|
|
|
- </div>
|
|
|
|
|
- <div className='close' onClick={() => setIsShowIntro(false)}>
|
|
|
|
|
- <img src={require('@/assets/img/closeWithTxt.png')} draggable='false' alt='' />
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ {isShowIntro && (
|
|
|
|
|
+ <div className={styles.intro}>
|
|
|
|
|
+ <div className='title'>
|
|
|
|
|
+ <div className='big'>世系铭远</div>
|
|
|
|
|
+ <div className='small'>程哲碑所载家族谱系</div>
|
|
|
|
|
+ <div className='sun'></div>
|
|
|
</div>
|
|
</div>
|
|
|
- )
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <div className='line'>
|
|
|
|
|
+ <img src={require('@/assets/img/A6_gen_introline.png')} draggable='false' alt='' />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div className='content'>
|
|
|
|
|
+ 东魏时期,北魏末年战乱虽让门阀制度略有松动,
|
|
|
|
|
+ 但家族血缘依旧是社会结构的核心纽带,北魏“以姓定族”“以族定贵”的门阀传统得以延续,家族的政治地位、世系传承与宗族凝聚力成为衡量社会地位的核心标准。
|
|
|
|
|
+ 程哲碑的碑文通过追溯祖先,将上党程氏家族塑造为世代簪缨的望族。
|
|
|
|
|
+ 在社会动荡的背景下,以先祖攀附、郡望嫁接来重新构建地方家族门阀秩序显得意义重大,
|
|
|
|
|
+ 也是这一时期地方家族巩固、提升社会地位潮流的产物。
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div className='close' onClick={() => setIsShowIntro(false)}>
|
|
|
|
|
+ <img src={require('@/assets/img/closeWithTxt.png')} draggable='false' alt='' />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ )}
|
|
|
|
|
|
|
|
<div className={`${styles.nodeDetail} ${currentNodeIndex !== -1 ? 'showD' : 'hideD'}`}>
|
|
<div className={`${styles.nodeDetail} ${currentNodeIndex !== -1 ? 'showD' : 'hideD'}`}>
|
|
|
<div className='sider'>
|
|
<div className='sider'>
|
|
@@ -74,13 +77,18 @@ function Genealogy({ setGotoTab }: { setGotoTab: (tab: number) => void }) {
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
- <div className='close' onClick={() => { setCurrentNodeIndex(-1); setIsShowGesture(false) }}>
|
|
|
|
|
|
|
+ <div
|
|
|
|
|
+ className='close'
|
|
|
|
|
+ onClick={() => {
|
|
|
|
|
+ setCurrentNodeIndex(-1)
|
|
|
|
|
+ setIsShowGesture(false)
|
|
|
|
|
+ }}
|
|
|
|
|
+ >
|
|
|
<img src={require('@/assets/img/closeWithTxt2.png')} draggable='false' alt='' />
|
|
<img src={require('@/assets/img/closeWithTxt2.png')} draggable='false' alt='' />
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
- </div >
|
|
|
|
|
|
|
+ </div>
|
|
|
)
|
|
)
|
|
|
}
|
|
}
|
|
|
|
|
|