我发现一个 jQuery shuffle 插件有问题。它打破了我嵌套的可排序列表。在底部,我放置了一个演示问题的链接,如下所述。
html 很简单,有一个包含四个列表项的有序列表。这些列表项中的每一个都包含一个带有两个列表项的无序列表。底部有一个按钮可以打乱有序列表。
<ol>
<li>
<ul>
<li>Item A</li>
<li>Item B</li>
</ul>
</li>
<li>
<ul>
<li>Item C</li>
<li>Item D</li>
</ul>
</li>
<li>
<ul>
<li>Item E</li>
<li>Item F</li>
</ul>
</li>
<li>
<ul>
<li>Item G</li>
<li>Item H</li>
</ul>
</li>
</ol>
<button type="button" class="shuffle">Shuffle</button>
有序列表是可排序的,无序列表也是可排序和连接的(例如,我可以将“项目 A”移动到“项目 G”下方)。到现在为止还挺好!
$(document).ready(function () {
$('ol').sortable({
placeholder: 'dashed'
});
$('ul').sortable({
placeholder: 'dashed',
connectWith: 'ul'
});
$('.shuffle').button().click(function(){
$('ol').shuffle();
});
});
随机播放按钮(几乎)做了我期望它做的事情,它随机播放有序列表(而不是无序!)。但在这样做的同时,它也破坏了无序的可排序列表。在我洗牌之前,我不再能够移动元素。
难道我做错了什么?插件有bug吗?
插件链接:http: //yelotofu.com/labs/jquery/snippets/shuffle/jquery.shuffle.js
链接到问题的演示:http: //jsbin.com/umeju6