带按钮的可排序jQuery UI列表

Syn*_*ead 3 javascript jquery jquery-ui button jquery-ui-sortable

按照jQuery UI 演示文档中的示例,我正在使用此HTML:

<ul class="sort">
  <li>
    <button>A</button>
  </li>
  <li>
    <button>B</button>
  </li>
  <li>
    <button>C</button>
  </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

这个JS:

$(function () {
  $('.sort').sortable();
})
Run Code Online (Sandbox Code Playgroud)

但正如在这个JSFiddle示例中看到的那样,按钮不可拖动.

如何让.sortable()使用按钮?

sho*_*dev 7

你可以告诉sortable()使用按钮作为可拖动的手柄.

$('.sort').sortable({handle:'button'});
Run Code Online (Sandbox Code Playgroud)

此外,由于cancel()包含按钮的默认选择器,您需要将取消选择器设置为空字符串:

$('.sort').sortable({
    handle: 'button',
    cancel: ''
});
Run Code Online (Sandbox Code Playgroud)

工作实例(jsfiddle)

jQuery sortable()文档

  • 我想您实际上并不需要`handle`选择器,因为&lt;li&gt;的全部内容都是一个按钮。 (2认同)