Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 在jQuery'中锁定一个选项卡;s可排序选项卡_Jquery Ui_Tabs_Jquery Ui Sortable - Fatal编程技术网

Jquery ui 在jQuery'中锁定一个选项卡;s可排序选项卡

Jquery ui 在jQuery'中锁定一个选项卡;s可排序选项卡,jquery-ui,tabs,jquery-ui-sortable,Jquery Ui,Tabs,Jquery Ui Sortable,我正在jQuery UI中创建一个可排序的选项卡,但我想锁定最后一个选项卡。我已经将它平移到右侧,但它仍然可以排序。要锁定最后添加的选项卡,我需要做什么?正式地说,您可以在可排序表上指定要排序的子项,只需将属性items设置为选择器即可 虽然它在移动其他选项卡时禁用排序(意味着禁用的选项卡永远不会移动),但仍然可以拖动它。要解决此问题,只需将函数绑定到项的mousedown事件,并调用stopPropagation()以防止拖动 请参见此JSFIDLE示例: $('#tabs').tabs().

我正在jQuery UI中创建一个可排序的选项卡,但我想锁定最后一个选项卡。我已经将它平移到右侧,但它仍然可以排序。要锁定最后添加的选项卡,我需要做什么?

正式地说,您可以在可排序表上指定要排序的子项,只需将属性
items
设置为选择器即可

虽然它在移动其他选项卡时禁用排序(意味着禁用的选项卡永远不会移动),但仍然可以拖动它。要解决此问题,只需将函数绑定到项的
mousedown
事件,并调用
stopPropagation()
以防止拖动

请参见此JSFIDLE示例:

$('#tabs').tabs().find('.ui-tabs-nav').sortable({
    axis: 'x',
    items: '> li:not(.locked)' //This will prevent sortables to move around the locked item
});

$('button').button().click(function(){
    // Lock last tab
    $('#tabs > ul > li:last').addClass('locked').mousedown(function(event){
        event.stopPropagation();
    });

    // Refresh sortable items
    $('#tabs').find('.ui-tabs-nav').sortable('refresh');
});