Files
barg-restuarant/components/PreLoader.vue
T
hamid.zarghami1@gmail.com e644edbd65 transfer project in github
2024-05-12 15:29:27 +03:30

75 lines
2.8 KiB
Vue

<template>
<div class="preLoader">
<div class="bgDIV"></div>
<div class="bgDIV"></div>
<div class="content relativePos">
<p class="p1">غذای سالم</p>
<p class="p2">انسان سالم</p>
<p class="p3">جامعه سالم</p>
</div>
<div class="loading">
<span>L</span>
<span>O</span>
<span>A</span>
<span>D</span>
<span>I</span>
<span>N</span>
<span>G</span>
</div>
<div class="progressBar"></div>
</div>
</template>
<script>
export default {
mounted() {
///////////////////////////////////////////////////////////////////
const preLoaderTl_step1 = this.$gsap.timeline({
onComplete: () => {
this.$store.commit('global_vars/preLoader_done')
}
})
.to($('.p1'), {opacity: 1, duration: 0.3,})
.to($('.p1'), {top: -40, duration: 0.7, ease: 'power4.inOut'}, '+=1')
.to($('.p2'), {top: 0, duration: 0.7, ease: 'power4.inOut'})
.to($('.p2'), {top: -40, duration: 0.7, ease: 'power4.inOut'}, '+=1')
.to($('.p3'), {top: 0, duration: 0.7, ease: 'power4.inOut'})
.to($('.p3'), {top: -40, duration: 0.7, ease: 'power4.inOut'}, '+=1')
.to($('.bgDIV'), {
y: this.$gsap.utils.wrap(['-100%', '100%']), duration: 1.5, onStart: () => {
setTimeout(() => {
preLoaderTl_step2.play()
}, 950)
}
})
.set($(".preLoader"), {display: 'none'})
.timeScale(1.3)
const progressbarTl = this.$gsap.timeline()
.set($('.preLoader .progressBar'), {opacity: 1})
.from($(".preLoader .progressBar"), {width: 0, duration: preLoaderTl_step1.totalDuration() / 1.5}, 0)
.to($(".preLoader .progressBar"), {opacity: 0, duration: 0.3}, ((preLoaderTl_step1.totalDuration() / 1.5) - 0.5))
const preLoaderTl_step2 = this.$gsap.timeline({paused: true})
/// header
.from($('.site--header'), {y: '-100%', duration: 0.4}, 0)
.from($(".site--header .reservation svg"), {scale: 0.8, opacity: 0, duration: 0.3}, 0)
.from($(".site--header .nav--links ul li"), {scale: 0.8, opacity: 0, duration: 0.2, stagger: 0.05}, 0.2)
.from($(".site--header .logo svg"), {scale: 0.8, opacity: 0, duration: 0.2}, 0.6)
/// footer
.from($('.site--footer'), {y: '100%', duration: 0.4}, 0)
.from($(".site--footer .goUp p"), {opacity: 0, duration: 0.3}, 0)
.from($(".site--footer .nav--links ul li"), {scale: 0.8, opacity: 0, duration: 0.2, stagger: 0.05}, 0.2)
.from($(".site--footer .copyRight h4"), {scale: 0.9, opacity: 0, duration: 0.2}, 0.4)
.from($(".site--footer .copyRight p"), {scale: 0.9, opacity: 0, duration: 0.2}, 0.5)
///////////////////////////////////////////////////////////////////
}
}
</script>