Sortable:现代浏览器中的拖放列表神器

Sortable 是一个 JavaScript 库,用于在现代浏览器和触摸设备中实现可重新排序的拖放列表,无需依赖 jQuery 或其他框架。
clickgpt_line.png_noView
介绍

嘿,大家好!今天我想和你们聊聊一个超级实用的工具——Sortable。它是一个JavaScript库,专门用来在现代浏览器和触摸设备上实现拖放排序功能的。最棒的是,它不需要 jQuery 或任何其他框架就能运行,简直是懒人福音啊!

Sortable 的亮点

Sortable 的功能可不止一点点哦。首先,它支持触摸设备和现代浏览器,包括老古董 IE9。你可以在同一个列表内拖动项目,也可以在不同列表之间移动项目。每次移动的时候,还有酷炫的 CSS 动画效果呢!而且,它还支持拖动句柄和可选择文本,真是比其他类似工具强大多了。

另外,Sortable 还内置了智能自动滚动和高级交换检测功能,动画流畅得让人想一直拖来拖去。它甚至支持多项拖动和 CSS 转换,使用起来非常顺手。更厉害的是,它完全基于原生 HTML5 的拖放 API 构建,支持各种流行的框架,比如 Angular、React、Vue 等等。

如何开始使用 Sortable

想要用上这个神器也不难。你可以通过 NPM 或 Bower 来安装它:

    
bash
npm install sortablejs --save

或者

    
bash
bower install --save sortablejs

安装好后,只需在你的项目中导入它:

    
javascript
import Sortable from 'sortablejs';

接下来,你就可以在你的 HTML 列表中使用 Sortable 了:

    
html
<ul id="items">
  <li>item 1</li>
  <li>item 2</li>
  <li>item 3</li>
</ul>

然后在 JavaScript 中创建一个 Sortable 实例:

    
javascript
var el = document.getElementById('items');
var sortable = Sortable.create(el);

是不是很简单?你可以用任何元素来作为列表和列表项,不仅限于 ulli 标签哦。

Sortable 的选项

Sortable 提供了丰富的选项来满足你的各种需求。比如,你可以设置拖动的延迟时间、动画速度、拖动句柄、过滤器等等。甚至可以通过 group 选项来实现跨列表拖动,简直是贴心到家了。

    
javascript
var sortable = new Sortable(el, {
  group: "name",
  sort: true,
  delay: 0,
  animation: 150,
  handle: ".my-handle",
  filter: ".ignore-elements",
  draggable: ".item",
  ghostClass: "sortable-ghost",
  chosenClass: "sortable-chosen",
  dragClass: "sortable-drag",
});

事件处理

Sortable 还支持各种事件处理,比如元素被选中、拖动开始、拖动结束、元素被添加或移除等等。你可以通过这些事件来实现更复杂的交互逻辑。

    
javascript
onEnd: function(evt) {
  var itemEl = evt.item;
  console.log('元素拖动结束', itemEl);
}

最后嘛,我觉得 Sortable 真的是一个非常强大的工具,特别适合那些需要在网页上实现拖放排序功能的开发者。它不仅功能强大,还很容易上手,真是省时省力的好帮手!如果你还没有用过它,赶紧试试吧!

RPA
八爪鱼RPA
支持一键抓取公众号/小红书/抖音/淘宝数据
立即查看
流程自动化
付费
AI爆文训练营
图文变现友好赛道,低门槛、高上限,教你从0到1做个赚钱的公众号!
立即查看
躺着赚钱
¥149/年
何老师陪你做副业
这里聚焦AI副业、个人IP、自媒体运营、写作、赚钱案例。不哔哔,只分享有价值的副业项目。
立即查看
AI赚钱案例
限免
DeepSeek进阶教程
带你全面掌握DeepSeek应用技巧。提升工作、学习效率
立即查看
100万人学过
付费
网盘拉新实战教程
每周花费一小时,手把手教你赚网盘平台佣金
立即查看
500人学过
限时优惠
AiPPT
结合最新AI技术,为用户提供一键生成高质量PPT的解决方案。
立即查看
一键生成 PPT
免费
豆包MarsCode
一款免费的AI编程助手,全新支持DeepSeek R1/V3、豆包大模型1.5自由切换,免部署、更准确、更强大!
立即查看
AI编程助手
免费
Monica AI
Monica AI满血复活DeepSeek【免费】,提升您的聊天、搜索、写作和编程体验。
立即查看
一站式 AI 助手
云服务
腾讯云
综合性的云计算服务平台,现已接入DeepSeek,提供多样化的云解决方案
立即查看
高效可靠
云服务
阿里云
全球领先的云计算与数据服务平台,提供云服务器、存储、数据库、安全等多种服务
立即查看
多样化
编程学习
免费领取编程学习资料