Um componente esbelto muito pequeno para animar seus elementos na rolagem
SAoS permite animar uma ou várias vezes um elemento no scroll, você pode definir os "triggers" superior e inferior e o css das divs internas (não recomendado, mas pode ajudar em alguns casos), veja abaixo a demonstração, como instalar e alguns exemplos?
Em termos de desempenho, esta biblioteca usa o Intersection Observer para a maioria dos navegadores (que vergonha, Internet Explorer)
npm i saos --save-dev
yarn add -D saos
Nota: O Sapper suporta apenas libs como dependências DEV , se você realmente deseja usar esta lib como uma dependência normal do Sapper, certifique-se de importar assim import Saos from 'saos/src/Saos.svelte';
caso contrário você terá problemas com o SSR!
Uso básico:
import Saos from "saos" ;
@keyframes -global-from-left {
0 % {
transform : rotateX ( 50 deg ) translateX ( -200 vw ) skewX ( -50 deg );
opacity : 1 ;
}
100 % {
transform : rotateX ( 0 deg ) translateX ( 0 ) skewX ( 0 deg );
opacity : 1 ;
}
}
< Saos animation = { "from-left 4s cubic-bezier(0.35, 0.5, 0.65, 0.95) both"} >
< div > < p > animation: from-left </ p > </ div >
</ Saos >
Além do parâmetro de animação, você pode usar:
Você pode fazer algo como:
// Create a handler on your script
function handleObserver ( x ) {
console . info ( x . detail . observing ) ;
}
// Use the `update` event on your html that will be dispatched every time that the `observing` update!
< Saos on : update = { handleObserver } > ... < / Saos >
E vai funcionar! Incrível, não? dê uma olhada no último cartão da nossa demonstração
Se você tem preguiça (como eu) de criar suas próprias animações, dê uma olhada no animista