Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
exhibition_page
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
龙菲
exhibition_page
Commits
06a655a7
提交
06a655a7
authored
8月 05, 2022
作者:
龙菲
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
替换wowjs为本地文件
上级
f1e40ce8
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
517 行增加
和
8 行删除
+517
-8
wow.js
public/static/js/wow.js
+513
-0
main.js
src/main.js
+1
-1
Display.vue
src/views/home/components/Display.vue
+1
-1
Virtural.vue
src/views/home/components/Virtural.vue
+2
-6
没有找到文件。
public/static/js/wow.js
0 → 100644
浏览文件 @
06a655a7
(
function
()
{
var
MutationObserver
,
Util
,
WeakMap
,
getComputedStyle
,
getComputedStyleRX
,
bind
=
function
(
fn
,
me
){
return
function
(){
return
fn
.
apply
(
me
,
arguments
);
};
},
indexOf
=
[].
indexOf
||
function
(
item
)
{
for
(
var
i
=
0
,
l
=
this
.
length
;
i
<
l
;
i
++
)
{
if
(
i
in
this
&&
this
[
i
]
===
item
)
return
i
;
}
return
-
1
;
};
Util
=
(
function
()
{
function
Util
()
{}
Util
.
prototype
.
extend
=
function
(
custom
,
defaults
)
{
var
key
,
value
;
for
(
key
in
defaults
)
{
value
=
defaults
[
key
];
if
(
custom
[
key
]
==
null
)
{
custom
[
key
]
=
value
;
}
}
return
custom
;
};
Util
.
prototype
.
isMobile
=
function
(
agent
)
{
return
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i
.
test
(
agent
);
};
Util
.
prototype
.
createEvent
=
function
(
event
,
bubble
,
cancel
,
detail
)
{
var
customEvent
;
if
(
bubble
==
null
)
{
bubble
=
false
;
}
if
(
cancel
==
null
)
{
cancel
=
false
;
}
if
(
detail
==
null
)
{
detail
=
null
;
}
if
(
document
.
createEvent
!=
null
)
{
customEvent
=
document
.
createEvent
(
'CustomEvent'
);
customEvent
.
initCustomEvent
(
event
,
bubble
,
cancel
,
detail
);
}
else
if
(
document
.
createEventObject
!=
null
)
{
customEvent
=
document
.
createEventObject
();
customEvent
.
eventType
=
event
;
}
else
{
customEvent
.
eventName
=
event
;
}
return
customEvent
;
};
Util
.
prototype
.
emitEvent
=
function
(
elem
,
event
)
{
if
(
elem
.
dispatchEvent
!=
null
)
{
return
elem
.
dispatchEvent
(
event
);
}
else
if
(
event
in
(
elem
!=
null
))
{
return
elem
[
event
]();
}
else
if
((
"on"
+
event
)
in
(
elem
!=
null
))
{
return
elem
[
"on"
+
event
]();
}
};
Util
.
prototype
.
addEvent
=
function
(
elem
,
event
,
fn
)
{
if
(
elem
.
addEventListener
!=
null
)
{
return
elem
.
addEventListener
(
event
,
fn
,
false
);
}
else
if
(
elem
.
attachEvent
!=
null
)
{
return
elem
.
attachEvent
(
"on"
+
event
,
fn
);
}
else
{
return
elem
[
event
]
=
fn
;
}
};
Util
.
prototype
.
removeEvent
=
function
(
elem
,
event
,
fn
)
{
if
(
elem
.
removeEventListener
!=
null
)
{
return
elem
.
removeEventListener
(
event
,
fn
,
false
);
}
else
if
(
elem
.
detachEvent
!=
null
)
{
return
elem
.
detachEvent
(
"on"
+
event
,
fn
);
}
else
{
return
delete
elem
[
event
];
}
};
Util
.
prototype
.
innerHeight
=
function
()
{
if
(
'innerHeight'
in
window
)
{
return
window
.
innerHeight
;
}
else
{
return
document
.
documentElement
.
clientHeight
;
}
};
return
Util
;
})();
WeakMap
=
this
.
WeakMap
||
this
.
MozWeakMap
||
(
WeakMap
=
(
function
()
{
function
WeakMap
()
{
this
.
keys
=
[];
this
.
values
=
[];
}
WeakMap
.
prototype
.
get
=
function
(
key
)
{
var
i
,
item
,
j
,
len
,
ref
;
ref
=
this
.
keys
;
for
(
i
=
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
i
=
++
j
)
{
item
=
ref
[
i
];
if
(
item
===
key
)
{
return
this
.
values
[
i
];
}
}
};
WeakMap
.
prototype
.
set
=
function
(
key
,
value
)
{
var
i
,
item
,
j
,
len
,
ref
;
ref
=
this
.
keys
;
for
(
i
=
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
i
=
++
j
)
{
item
=
ref
[
i
];
if
(
item
===
key
)
{
this
.
values
[
i
]
=
value
;
return
;
}
}
this
.
keys
.
push
(
key
);
return
this
.
values
.
push
(
value
);
};
return
WeakMap
;
})());
MutationObserver
=
this
.
MutationObserver
||
this
.
WebkitMutationObserver
||
this
.
MozMutationObserver
||
(
MutationObserver
=
(
function
()
{
function
MutationObserver
()
{
if
(
typeof
console
!==
"undefined"
&&
console
!==
null
)
{
console
.
warn
(
'MutationObserver is not supported by your browser.'
);
}
if
(
typeof
console
!==
"undefined"
&&
console
!==
null
)
{
console
.
warn
(
'WOW.js cannot detect dom mutations, please call .sync() after loading new content.'
);
}
}
MutationObserver
.
notSupported
=
true
;
MutationObserver
.
prototype
.
observe
=
function
()
{};
return
MutationObserver
;
})());
getComputedStyle
=
this
.
getComputedStyle
||
function
(
el
,
pseudo
)
{
this
.
getPropertyValue
=
function
(
prop
)
{
var
ref
;
if
(
prop
===
'float'
)
{
prop
=
'styleFloat'
;
}
if
(
getComputedStyleRX
.
test
(
prop
))
{
prop
.
replace
(
getComputedStyleRX
,
function
(
_
,
_char
)
{
return
_char
.
toUpperCase
();
});
}
return
((
ref
=
el
.
currentStyle
)
!=
null
?
ref
[
prop
]
:
void
0
)
||
null
;
};
return
this
;
};
getComputedStyleRX
=
/
(\-([
a-z
]){1})
/g
;
this
.
WOW
=
(
function
()
{
WOW
.
prototype
.
defaults
=
{
boxClass
:
'wow'
,
animateClass
:
'animated'
,
offset
:
0
,
mobile
:
true
,
live
:
true
,
callback
:
null
,
scrollContainer
:
null
};
function
WOW
(
options
)
{
if
(
options
==
null
)
{
options
=
{};
}
this
.
scrollCallback
=
bind
(
this
.
scrollCallback
,
this
);
this
.
scrollHandler
=
bind
(
this
.
scrollHandler
,
this
);
this
.
resetAnimation
=
bind
(
this
.
resetAnimation
,
this
);
this
.
start
=
bind
(
this
.
start
,
this
);
this
.
scrolled
=
true
;
this
.
config
=
this
.
util
().
extend
(
options
,
this
.
defaults
);
if
(
options
.
scrollContainer
!=
null
)
{
this
.
config
.
scrollContainer
=
document
.
querySelector
(
options
.
scrollContainer
);
}
this
.
animationNameCache
=
new
WeakMap
();
this
.
wowEvent
=
this
.
util
().
createEvent
(
this
.
config
.
boxClass
);
}
WOW
.
prototype
.
init
=
function
()
{
var
ref
;
this
.
element
=
window
.
document
.
documentElement
;
if
((
ref
=
document
.
readyState
)
===
"interactive"
||
ref
===
"complete"
)
{
this
.
start
();
}
else
{
this
.
util
().
addEvent
(
document
,
'DOMContentLoaded'
,
this
.
start
);
}
return
this
.
finished
=
[];
};
WOW
.
prototype
.
start
=
function
()
{
var
box
,
j
,
len
,
ref
;
this
.
stopped
=
false
;
this
.
boxes
=
(
function
()
{
var
j
,
len
,
ref
,
results
;
ref
=
this
.
element
.
querySelectorAll
(
"."
+
this
.
config
.
boxClass
);
results
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
results
.
push
(
box
);
}
return
results
;
}).
call
(
this
);
this
.
all
=
(
function
()
{
var
j
,
len
,
ref
,
results
;
ref
=
this
.
boxes
;
results
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
results
.
push
(
box
);
}
return
results
;
}).
call
(
this
);
if
(
this
.
boxes
.
length
)
{
if
(
this
.
disabled
())
{
this
.
resetStyle
();
}
else
{
ref
=
this
.
boxes
;
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
this
.
applyStyle
(
box
,
true
);
}
}
}
if
(
!
this
.
disabled
())
{
this
.
util
().
addEvent
(
this
.
config
.
scrollContainer
||
window
,
'scroll'
,
this
.
scrollHandler
);
this
.
util
().
addEvent
(
window
,
'resize'
,
this
.
scrollHandler
);
this
.
interval
=
setInterval
(
this
.
scrollCallback
,
50
);
}
if
(
this
.
config
.
live
)
{
return
new
MutationObserver
((
function
(
_this
)
{
return
function
(
records
)
{
var
k
,
len1
,
node
,
record
,
results
;
results
=
[];
for
(
k
=
0
,
len1
=
records
.
length
;
k
<
len1
;
k
++
)
{
record
=
records
[
k
];
results
.
push
((
function
()
{
var
l
,
len2
,
ref1
,
results1
;
ref1
=
record
.
addedNodes
||
[];
results1
=
[];
for
(
l
=
0
,
len2
=
ref1
.
length
;
l
<
len2
;
l
++
)
{
node
=
ref1
[
l
];
results1
.
push
(
this
.
doSync
(
node
));
}
return
results1
;
}).
call
(
_this
));
}
return
results
;
};
})(
this
)).
observe
(
document
.
body
,
{
childList
:
true
,
subtree
:
true
});
}
};
WOW
.
prototype
.
stop
=
function
()
{
this
.
stopped
=
true
;
this
.
util
().
removeEvent
(
this
.
config
.
scrollContainer
||
window
,
'scroll'
,
this
.
scrollHandler
);
this
.
util
().
removeEvent
(
window
,
'resize'
,
this
.
scrollHandler
);
if
(
this
.
interval
!=
null
)
{
return
clearInterval
(
this
.
interval
);
}
};
WOW
.
prototype
.
sync
=
function
(
element
)
{
if
(
MutationObserver
.
notSupported
)
{
return
this
.
doSync
(
this
.
element
);
}
};
WOW
.
prototype
.
doSync
=
function
(
element
)
{
var
box
,
j
,
len
,
ref
,
results
;
if
(
element
==
null
)
{
element
=
this
.
element
;
}
if
(
element
.
nodeType
!==
1
)
{
return
;
}
element
=
element
.
parentNode
||
element
;
ref
=
element
.
querySelectorAll
(
"."
+
this
.
config
.
boxClass
);
results
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
if
(
indexOf
.
call
(
this
.
all
,
box
)
<
0
)
{
this
.
boxes
.
push
(
box
);
this
.
all
.
push
(
box
);
if
(
this
.
stopped
||
this
.
disabled
())
{
this
.
resetStyle
();
}
else
{
this
.
applyStyle
(
box
,
true
);
}
results
.
push
(
this
.
scrolled
=
true
);
}
else
{
results
.
push
(
void
0
);
}
}
return
results
;
};
WOW
.
prototype
.
show
=
function
(
box
)
{
this
.
applyStyle
(
box
);
box
.
className
=
box
.
className
+
" "
+
this
.
config
.
animateClass
;
if
(
this
.
config
.
callback
!=
null
)
{
this
.
config
.
callback
(
box
);
}
this
.
util
().
emitEvent
(
box
,
this
.
wowEvent
);
this
.
util
().
addEvent
(
box
,
'animationend'
,
this
.
resetAnimation
);
this
.
util
().
addEvent
(
box
,
'oanimationend'
,
this
.
resetAnimation
);
this
.
util
().
addEvent
(
box
,
'webkitAnimationEnd'
,
this
.
resetAnimation
);
this
.
util
().
addEvent
(
box
,
'MSAnimationEnd'
,
this
.
resetAnimation
);
return
box
;
};
WOW
.
prototype
.
applyStyle
=
function
(
box
,
hidden
)
{
var
delay
,
duration
,
iteration
;
duration
=
box
.
getAttribute
(
'data-wow-duration'
);
delay
=
box
.
getAttribute
(
'data-wow-delay'
);
iteration
=
box
.
getAttribute
(
'data-wow-iteration'
);
return
this
.
animate
((
function
(
_this
)
{
return
function
()
{
return
_this
.
customStyle
(
box
,
hidden
,
duration
,
delay
,
iteration
);
};
})(
this
));
};
WOW
.
prototype
.
animate
=
(
function
()
{
if
(
'requestAnimationFrame'
in
window
)
{
return
function
(
callback
)
{
return
window
.
requestAnimationFrame
(
callback
);
};
}
else
{
return
function
(
callback
)
{
return
callback
();
};
}
})();
WOW
.
prototype
.
resetStyle
=
function
()
{
var
box
,
j
,
len
,
ref
,
results
;
ref
=
this
.
boxes
;
results
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
results
.
push
(
box
.
style
.
visibility
=
'visible'
);
}
return
results
;
};
WOW
.
prototype
.
resetAnimation
=
function
(
event
)
{
var
target
;
if
(
event
.
type
.
toLowerCase
().
indexOf
(
'animationend'
)
>=
0
)
{
target
=
event
.
target
||
event
.
srcElement
;
return
target
.
className
=
target
.
className
.
replace
(
this
.
config
.
animateClass
,
''
).
trim
();
}
};
WOW
.
prototype
.
customStyle
=
function
(
box
,
hidden
,
duration
,
delay
,
iteration
)
{
if
(
hidden
)
{
this
.
cacheAnimationName
(
box
);
}
box
.
style
.
visibility
=
hidden
?
'hidden'
:
'visible'
;
if
(
duration
)
{
this
.
vendorSet
(
box
.
style
,
{
animationDuration
:
duration
});
}
if
(
delay
)
{
this
.
vendorSet
(
box
.
style
,
{
animationDelay
:
delay
});
}
if
(
iteration
)
{
this
.
vendorSet
(
box
.
style
,
{
animationIterationCount
:
iteration
});
}
this
.
vendorSet
(
box
.
style
,
{
animationName
:
hidden
?
'none'
:
this
.
cachedAnimationName
(
box
)
});
return
box
;
};
WOW
.
prototype
.
vendors
=
[
"moz"
,
"webkit"
];
WOW
.
prototype
.
vendorSet
=
function
(
elem
,
properties
)
{
var
name
,
results
,
value
,
vendor
;
results
=
[];
for
(
name
in
properties
)
{
value
=
properties
[
name
];
elem
[
""
+
name
]
=
value
;
results
.
push
((
function
()
{
var
j
,
len
,
ref
,
results1
;
ref
=
this
.
vendors
;
results1
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
vendor
=
ref
[
j
];
results1
.
push
(
elem
[
""
+
vendor
+
(
name
.
charAt
(
0
).
toUpperCase
())
+
(
name
.
substr
(
1
))]
=
value
);
}
return
results1
;
}).
call
(
this
));
}
return
results
;
};
WOW
.
prototype
.
vendorCSS
=
function
(
elem
,
property
)
{
var
j
,
len
,
ref
,
result
,
style
,
vendor
;
style
=
getComputedStyle
(
elem
);
result
=
style
.
getPropertyCSSValue
(
property
);
ref
=
this
.
vendors
;
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
vendor
=
ref
[
j
];
result
=
result
||
style
.
getPropertyCSSValue
(
"-"
+
vendor
+
"-"
+
property
);
}
return
result
;
};
WOW
.
prototype
.
animationName
=
function
(
box
)
{
var
animationName
,
error
;
try
{
animationName
=
this
.
vendorCSS
(
box
,
'animation-name'
).
cssText
;
}
catch
(
error
)
{
animationName
=
getComputedStyle
(
box
).
getPropertyValue
(
'animation-name'
);
}
if
(
animationName
===
'none'
)
{
return
''
;
}
else
{
return
animationName
;
}
};
WOW
.
prototype
.
cacheAnimationName
=
function
(
box
)
{
return
this
.
animationNameCache
.
set
(
box
,
this
.
animationName
(
box
));
};
WOW
.
prototype
.
cachedAnimationName
=
function
(
box
)
{
return
this
.
animationNameCache
.
get
(
box
);
};
WOW
.
prototype
.
scrollHandler
=
function
()
{
return
this
.
scrolled
=
true
;
};
WOW
.
prototype
.
scrollCallback
=
function
()
{
var
box
;
if
(
this
.
scrolled
)
{
this
.
scrolled
=
false
;
this
.
boxes
=
(
function
()
{
var
j
,
len
,
ref
,
results
;
ref
=
this
.
boxes
;
results
=
[];
for
(
j
=
0
,
len
=
ref
.
length
;
j
<
len
;
j
++
)
{
box
=
ref
[
j
];
if
(
!
(
box
))
{
continue
;
}
if
(
this
.
isVisible
(
box
))
{
this
.
show
(
box
);
continue
;
}
results
.
push
(
box
);
}
return
results
;
}).
call
(
this
);
if
(
!
(
this
.
boxes
.
length
||
this
.
config
.
live
))
{
return
this
.
stop
();
}
}
};
WOW
.
prototype
.
offsetTop
=
function
(
element
)
{
var
top
;
while
(
element
.
offsetTop
===
void
0
)
{
element
=
element
.
parentNode
;
}
top
=
element
.
offsetTop
;
while
(
element
=
element
.
offsetParent
)
{
top
+=
element
.
offsetTop
;
}
return
top
;
};
WOW
.
prototype
.
isVisible
=
function
(
box
)
{
var
bottom
,
offset
,
top
,
viewBottom
,
viewTop
;
offset
=
box
.
getAttribute
(
'data-wow-offset'
)
||
this
.
config
.
offset
;
viewTop
=
(
this
.
config
.
scrollContainer
&&
this
.
config
.
scrollContainer
.
scrollTop
)
||
window
.
pageYOffset
;
viewBottom
=
viewTop
+
Math
.
min
(
this
.
element
.
clientHeight
,
this
.
util
().
innerHeight
())
-
offset
;
top
=
this
.
offsetTop
(
box
);
bottom
=
top
+
box
.
clientHeight
;
return
top
<=
viewBottom
&&
bottom
>=
viewTop
;
};
WOW
.
prototype
.
util
=
function
()
{
return
this
.
_util
!=
null
?
this
.
_util
:
this
.
_util
=
new
Util
();
};
WOW
.
prototype
.
disabled
=
function
()
{
return
!
this
.
config
.
mobile
&&
this
.
util
().
isMobile
(
navigator
.
userAgent
);
};
return
WOW
;
})();
}).
call
(
this
);
src/main.js
浏览文件 @
06a655a7
...
@@ -13,7 +13,7 @@ import animated from 'animate.css';
...
@@ -13,7 +13,7 @@ import animated from 'animate.css';
// 滚动动画 wow.js
// 滚动动画 wow.js
import
{
import
{
WOW
WOW
}
from
'
wowjs
'
}
from
'
../public/static/js/wow
'
import
{
import
{
getFullUrl
getFullUrl
}
from
'@/utils/index'
}
from
'@/utils/index'
...
...
src/views/home/components/Display.vue
浏览文件 @
06a655a7
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
<
template
>
<
template
>
<div
class=
"home-display"
>
<div
class=
"home-display"
>
<div
class=
"title wow animate__animated animate__fadeInUp"
>
展览
</div>
<div
class=
"title wow animate__animated animate__fadeInUp"
>
展览
</div>
<div
class=
"wrapper"
>
<div
class=
"wrapper
wow animate__animated animate__fadeInUp
"
>
<!--
<div
<!--
<div
class=
"sliders"
class=
"sliders"
:style=
"
{
:style=
"
{
...
...
src/views/home/components/Virtural.vue
浏览文件 @
06a655a7
...
@@ -10,9 +10,9 @@
...
@@ -10,9 +10,9 @@
<div
class=
"en"
>
Virtual Exhibition Hall
</div>
<div
class=
"en"
>
Virtual Exhibition Hall
</div>
</div>
</div>
<el-row
class=
"content"
:gutter=
"60"
>
<el-row
class=
"content"
:gutter=
"60"
>
<el-col
:span=
"6"
>
<el-col
:span=
"6"
class=
" wow animate__animated animate__fadeInLeft"
>
<div
<div
class=
"intro
wow animate__animated animate__fadeInLeft
"
class=
"intro"
v-if=
"list.length > 0"
v-if=
"list.length > 0"
>
>
<div
class=
"name"
>
{{
list
[
0
].
name
}}
</div>
<div
class=
"name"
>
{{
list
[
0
].
name
}}
</div>
...
@@ -20,10 +20,6 @@
...
@@ -20,10 +20,6 @@
<div
class=
"intro-content"
>
<div
class=
"intro-content"
>
{{
list
[
0
].
intro
}}
{{
list
[
0
].
intro
}}
</div>
</div>
<!--
<div
class=
"entrance"
@
click=
"handleClick(list[0])"
>
<span
class=
"entrance-text"
>
点击进入
</span>
<img
src=
"@/assets/imgs/home/entrance.png"
alt=
""
/>
</div>
-->
<EntranceIcon
color=
"#fff"
/>
<EntranceIcon
color=
"#fff"
/>
</div>
</div>
</el-col>
</el-col>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论