了解一下 Swapy
基本上無害
發(fā)布于 云南 2024-08-27 · 8437瀏覽 2贊

簡介?

一個相當(dāng)簡潔的拖動庫,簡潔到?jīng)]有任何多余的功能。官方文檔甚至只有一頁。

安裝

最簡使用?

先熟悉兩個基本概念:

  • 插槽 slots:可以放置拖動元素的區(qū)域,使用 data-swapy-slot="xxx" 標(biāo)識。
  • 拖動項(xiàng) items:可以拖動的元素,使用 data-swopy-item="xxx" 標(biāo)識。

拖動項(xiàng)可在插槽中自由拖動,交換位置。

然后再對外層元素進(jìn)行初始化:

拖動把手?

有時需要限制,讓拖動項(xiàng)中只有某個元素可拖動。

可為元素添加 data-swapy-handle 屬性,其他的區(qū)域?qū)⒉荒芡蟿印?/p>

當(dāng)前插槽高亮?

swapy 會為當(dāng)前即將被放置的 channel 添加 data-swapy-highlighted 屬性??梢允褂?CSS 為其添加屬性:

事件監(jiān)聽與位置持久化?

使用 onSwap 監(jiān)聽拖動事件,函數(shù)返回一個只包含 data 屬性的對象。

它會以 map、array、object 三種形式來返回插槽與拖動項(xiàng)之間的對應(yīng)關(guān)系。

此時就可以將位置信息持久化到存儲中:

此后對應(yīng)地需要寫活最初的 html 代碼,讓它根據(jù)存儲順序渲染拖動項(xiàng),此處便不贅述了。

基本上無害
火星宛如雪花,從42號有軌電車車頂?shù)墓渭娖魃巷w落而下。
瀏覽 8437
2
相關(guān)推薦
最新評論
贊過的人 2
評論加載中...

暫無評論,快來評論吧!