123456789101112131415161718192021222324252627282930 |
- <script lang="ts">
- import { fade, fly } from 'svelte/transition';
- import { onMount } from 'svelte';
- let idx = 0;
- export let className = '';
- export let words = ['lorem', 'ipsum'];
- export let duration = 4000;
- onMount(() => {
- setInterval(async () => {
- if (idx === words.length - 1) {
- idx = 0;
- } else {
- idx = idx + 1;
- }
- }, duration);
- });
- </script>
- <div class={className}>
- <div>
- {#key idx}
- <div class=" marquee-item" in:fly={{ y: '30%', duration: 1000 }}>
- {words.at(idx)}
- </div>
- {/key}
- </div>
- </div>
|