1.0.1 • Published 1 year ago

svelte-tide-image-box v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Svelte TideImageBox

Lightbox風のsvelteコンポーネントを提供します。

npm install

npm install -save-dev svelte-tide-image-box

use

<script lang="ts">
import TideImageBox, {type TideImage, type TideImageOptions} from 'svelte-tide-image-box';

const images:TideImage[] = [
    {
        src: '',
        alt: '', // optional
        thumbnail: '', // optional
        // ...other properties
    }
]

// default options (optional)
const optiosn:TideImageOptions = {
    appendToNode: document.body,
}

const onCatchDispatch = ({ detail: image }: { detail: { image: TideImage } }) => {
    // on:closeのみデータはありません
    console.log(image);
};
</script>

simple

<TideImageBox {images} {optiosn} on:open={onCatchDispatch} on:close={onCatchDispatch} on:change={onCatchDispatch} />

use slot

<TideImageBox {images} let:tideImages let:onClick>
    {#each tideImages as image, i (i)}
        <a class="link" href={image.src} on:click={(e) => onClick(e, image)}>
            <img src={image.src} alt={image.alt} class="img" />
        </a>
    {/each}
</TideImageBox>

options

propertytypedefaultdesc
appendToNodeHTMLElementdocument.bodyImageBoxのDOMを追加する要素を設定
isShowCaptionbooleanfalseキャプション(alt)を表示するか
canEscKeyClosebooleantrueEscキーで画像を閉じることができるか
canArrowKeyChangebooleantrue左右の矢印キーで画像を戻る/進むができるか
canSwipeDownClosebooleantrue下スワイプで画像を閉じることができるか
canSwipeChangebooleantrue左右スワイプで画像を戻る/進むができるか
canScrollNonebooleantrue背景のスクロールを禁止するか
scrollNoneToNodeHTMLElementdocument.body背景のスクロールを禁止する要素を設定

event

on:~にて各種操作時のeventを取得できます。

Event引数
on:open表示するimage
on:close---
on:change変更後のimage
1.0.1

1 year ago

1.0.0

1 year ago

0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.1

1 year ago