如何在jQuery中实现可排序的播放列表

How to implement a sortable playlist in jQuery

本文关键字:排序 播放列表 实现 jQuery      更新时间:2023-09-26

我正在制作一个简单的音乐播放在线应用程序。我想制作一个歌曲播放列表,我希望播放列表中的歌曲是可排序的。我计划使用jQuery"可排序"插件。但是,我想跟踪歌曲的顺序,以便当一首歌曲结束时,我知道下一首歌要开始。我当前的解决方案不是创建要在用户更改歌曲顺序时执行的事件处理程序,而是实际跟踪歌曲的顺序,而是:

  1. 跟踪当前播放的歌曲元素的 ID
  2. 歌曲结束后,使用 jQuery 查找具有当前 id 的元素
  3. 使用 .next(( 播放下一首歌曲

这个实现有什么问题吗?不断跟踪歌曲的顺序会更好吗?

似乎完全合适,我实际上在一个完全不相关的网站上使用了完全相同的方法。这是我为获取下一个id所做的,我知道你说你已经有一些工作了,但我想无论如何我都会分享,以防它有帮助:

current_id = window.my_id;
next_id = $('#' + current_id).next().attr('id');
if (next_id == undefined) {
    return; // no more siblings after it
}
// do what you need to do here with next_id to actually load the next content
// in my web apps case, it removes some elements and just changes the hash
// which another function handles
current_id = next_id;
window.my_id = current_id;

这真的没有任何问题。它省去了保留订单Array,每次重新订购都需要更新,而不是只在需要时(在上一首曲目的末尾(阅读下一首曲目。