Jquery ui Jquery ui-可排序:按图标拖动';手柄';在可排序元素内

Jquery ui Jquery ui-可排序:按图标拖动';手柄';在可排序元素内,jquery-ui,user-interface,interface,web,jquery-ui-sortable,Jquery Ui,User Interface,Interface,Web,Jquery Ui Sortable,我的jQueryUI排序表工作正常,但我的排序元素中有其他交互元素。为了防止在与可排序div中的元素交互时意外排序,我想以某种方式使可排序表的拖动移动仅在拖动可排序表中的某个元素时发生,例如可能位于每个可排序表左上角的“移动”图标。这在通用jqui中是可能的,还是我需要编写自己的钩子?插件的选项允许您定义可以启动排序的元素。您可以提供选择器或元素 如果有此html,则使用.handler作为开始排序的句柄: <ul class="sortable"> <li>

我的jQueryUI排序表工作正常,但我的排序元素中有其他交互元素。为了防止在与可排序div中的元素交互时意外排序,我想以某种方式使可排序表的拖动移动仅在拖动可排序表中的某个元素时发生,例如可能位于每个可排序表左上角的“移动”图标。这在通用jqui中是可能的,还是我需要编写自己的钩子?

插件的选项允许您定义可以启动排序的元素。您可以提供选择器或元素

如果有此html,则使用
.handler
作为开始排序的句柄:

<ul class="sortable">
    <li>
        <span class="handle"></span>
        My element
    </li>
</ul>

您可以随意设置句柄元素的样式。

OMG不敢相信我在sortable文档中没有看到这一点,但它就在选项部分……嗯,似乎在IE7中(IE9中的怪癖模式),它不起作用:(.句柄不起作用,因为它仅限于句柄,所以在IE7中现在禁用排序:(.适用于FF、IE9、Chrome…这是jquery 1.7和jq ui 1.8。如果我没记错的话,我曾经遇到过类似的问题。我已经成功地在中应用了一个解决方案演示程序,但我认为它现在在最新的jquery ui 1.8.16中得到了修复。也许这与jquery ui 1.7和jq ui 1.8无关,但这些问题很难找到。@RohitSengar.
handle
property accepts是一个选择器。我想你可以像选择多个元素那样编写这样的
{handle:'.handle1.handle2'}
。试试看。
$( ".sortable" ).sortable({ handle: '.handle' });