Added smooth scroll using lenis
This commit is contained in:
parent
ec5d752d85
commit
de4b44f9fa
2 changed files with 26 additions and 0 deletions
20
src/lib/lenis.js
Normal file
20
src/lib/lenis.js
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
import Lenis from 'lenis';
|
||||
|
||||
let lenisInstance = null;
|
||||
|
||||
export const lenisScrollInstance = () => {
|
||||
if (!lenisInstance) {
|
||||
const lenis = new Lenis();
|
||||
|
||||
function raf(time) {
|
||||
lenis.raf(time);
|
||||
requestAnimationFrame(raf);
|
||||
}
|
||||
|
||||
requestAnimationFrame(raf);
|
||||
|
||||
lenisInstance = lenis;
|
||||
}
|
||||
|
||||
return lenisInstance;
|
||||
};
|
||||
|
|
@ -3,8 +3,14 @@
|
|||
import Footer from '$lib/components/footer.svelte';
|
||||
import './layout.css';
|
||||
import favicon from '$lib/assets/favicon.svg';
|
||||
import { onMount } from 'svelte';
|
||||
import 'lenis/dist/lenis.css';
|
||||
import { lenisScrollInstance } from '$lib/lenis';
|
||||
|
||||
let { children } = $props();
|
||||
onMount(() => {
|
||||
lenisScrollInstance();
|
||||
});
|
||||
</script>
|
||||
|
||||
<svelte:head><link rel="icon" href={favicon} /></svelte:head>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue