svelte-swipe

Svelte Swipe with zero dependencies :fire: :boom:

  • 所有者: SharifClick/svelte-swipe
  • 平台:
  • 許可證: MIT License
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

Svelte Swipe

NPM version NPM downloads

Swipable items wrapper component for Svelte :fire: :boom: (zero dependencies - 3.37 KB gzipped)

View the demo.

Installation

npm i svelte-swipe

Usage

<script>

  import { Swipe, SwipeItem } from "svelte-swipe"; // gzipped 3.37 KB

  let autoplay = false;
  let delay = 2000; //ms
  let showIndicators = true;
  let transitionDuration = 1000; //ms
  let defaultIndex = 0; //start from 0

</script>

<style>
  .swipe-holder{
    height: 30vh;
    width: 100%;
  }
  img{
    max-width: 100%;
    height: auto;
  }
</style>

<div class="swipe-holder">
  <Swipe {showIndicators} {autoplay} {delay} {transitionDuration} {defaultIndex}>
    <SwipeItem>
      <img src="./images/1.jpg" alt="">
    </SwipeItem>

    <SwipeItem>
      <img src="./images/2.jpg" alt="">
    </SwipeItem>

    <SwipeItem>
      <img src="./images/3.jpg" alt="">
    </SwipeItem>

    <SwipeItem>
      <img src="./images/4.jpg" alt="">
    </SwipeItem>
  </Swipe>
</div>

Pointer event inside Swipe Item

<style>
   ...

  .has-pointer-event{
    pointer-events:fill;
  }
</style>

<div class="swipe-holder">
  <Swipe>
    <SwipeItem>
      <div>
        <button class="has-pointer-event" on:click={sayHi}>Say Hi</button>
      </div>
    </SwipeItem>
    ...
  </Swipe>
</div>

Programmatically change slides


<script>
  let SwipeComp;

  function nextSlide(){
   SwipeComp.nextItem()
  }

  function prevSlide(){
    SwipeComp.prevItem()
  }

</script>
<div class="swipe-holder">
  <Swipe bind:this={SwipeComp}>
    <SwipeItem>....</SwipeItem>
    ...
  </Swipe>
</div>
<div class="buttons-holder">
  <button type="button" on:click={prevSlide}>Prev</button>
  <button type="button" on:click={nextSlide}>Next</button>
</div>

Default css custom properties


  :root{
    --sv-swipe-panel-height: inherit;
    --sv-swipe-panel-width: inherit;
    --sv-swipe-panel-wrapper-index: 2;
    --sv-swipe-indicator-active-color: grey;
  }

Props, Name, Type, Description, Required, Default, ---, ---, ---, ---, ---, autoplay, Boolean, Play items as slide, No, false, showIndicators, Boolean, appears clickable circle indicators bottom center of item, No, false, transitionDuration, Number, staying duration of per slide/swipe item, No, 200 *ms, delay, Number, transition delay, No, 1000 *ms, defaultIndex, Number, initial item index, No, 0, ## NPM Statistics

Download stats for this NPM package

NPM

Scan qr code to see url in your device

demo-url

主要指標

概覽
名稱與所有者SharifClick/svelte-swipe
主編程語言Svelte
編程語言JavaScript (語言數: 3)
平台
許可證MIT License
所有者活动
創建於2019-08-25 16:15:34
推送於2024-02-29 19:15:25
最后一次提交2023-11-10 19:17:58
發布數17
最新版本名稱2.0.4 (發布於 )
第一版名稱1.0.0 (發布於 )
用户参与
星數390
關注者數7
派生數24
提交數406
已啟用問題?
問題數47
打開的問題數17
拉請求數21
打開的拉請求數3
關閉的拉請求數12
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?