mirror of
https://github.com/liyunze-coding/RythonDev.git
synced 2026-09-22 07:44:26 +00:00
animated greeting
This commit is contained in:
parent
346e97b753
commit
4eb512d2e8
1 changed files with 33 additions and 16 deletions
|
|
@ -2,20 +2,6 @@
|
||||||
import { onMount } from "svelte";
|
import { onMount } from "svelte";
|
||||||
import Socials from "../elements/Socials.svelte";
|
import Socials from "../elements/Socials.svelte";
|
||||||
|
|
||||||
// Greeting
|
|
||||||
let date = new Date();
|
|
||||||
let hour = date.getHours();
|
|
||||||
|
|
||||||
let greeting: string = "";
|
|
||||||
|
|
||||||
if (hour >= 0 && hour < 12) {
|
|
||||||
greeting = "morning";
|
|
||||||
} else if (hour >= 12 && hour < 18) {
|
|
||||||
greeting = "afternoon";
|
|
||||||
} else if (hour >= 18) {
|
|
||||||
greeting = "evening";
|
|
||||||
}
|
|
||||||
|
|
||||||
// Roles
|
// Roles
|
||||||
let roles: string[] = [
|
let roles: string[] = [
|
||||||
"Developer",
|
"Developer",
|
||||||
|
|
@ -82,10 +68,38 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Greeting
|
||||||
|
let date = new Date();
|
||||||
|
let hour = date.getHours();
|
||||||
|
|
||||||
|
let greeting: string = "";
|
||||||
|
|
||||||
|
if (hour >= 0 && hour < 12) {
|
||||||
|
greeting = "morning";
|
||||||
|
} else if (hour >= 12 && hour < 18) {
|
||||||
|
greeting = "afternoon";
|
||||||
|
} else if (hour >= 18) {
|
||||||
|
greeting = "evening";
|
||||||
|
}
|
||||||
|
|
||||||
|
let greetingState: string = "";
|
||||||
|
let greetingPulse: HTMLElement;
|
||||||
|
|
||||||
|
async function animateGreeting(greeting: string) {
|
||||||
|
for (let i = 0; i < greeting.length; i++) {
|
||||||
|
greetingState = addCharacter(greetingState, greeting);
|
||||||
|
await sleep(roleInterval);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// after window finish loading, call animateRoles()
|
// after window finish loading, call animateRoles()
|
||||||
onMount(async () => {
|
onMount(async () => {
|
||||||
await sleep(800);
|
await sleep(800);
|
||||||
animateRoles();
|
animateGreeting(greeting).then(() => {
|
||||||
|
greetingPulse.classList.remove("animate-pulse");
|
||||||
|
greetingPulse.classList.add("hidden");
|
||||||
|
});
|
||||||
|
await animateRoles();
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
@ -116,7 +130,10 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-2xl font-bold mt-10">
|
<div class="text-2xl font-bold mt-10">
|
||||||
Good {greeting}, <br class="sm:hidden" />I'm Ryan!
|
Good {greetingState}<span
|
||||||
|
bind:this={greetingPulse}
|
||||||
|
class="animate-pulse font-extralight">|</span
|
||||||
|
>, <br class="sm:hidden" />I'm Ryan!
|
||||||
</div>
|
</div>
|
||||||
<p class="text-left">
|
<p class="text-left">
|
||||||
I was born and raised in Malaysia, and fluent in Mandarin Chinese
|
I was born and raised in Malaysia, and fluent in Mandarin Chinese
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue