javascript-jQuery UI的Sortable是否可以处理items选项的复杂选择器?
作者:互联网
我有一个无序列表中的列表项,双击该列表项可以通过所见即所得编辑器对它进行编辑.
$('ul.mtm_section').sortable({
disabled: true,
distance: 10,
items: '> li:not(:has(form))'
});
我的目标是防止列表项在编辑时被排序-也就是在替换表单元素代替内容后.
不幸的是我的项目选择器不起作用.可排序是否能够处理此类复杂的选择器?如果不是,是否还有其他聪明的方法可以禁止某些项目进行排序,也许是回调函数?
我宁愿依赖于此sortable选项,因为wysiwyg插件与jEditable紧密嵌套,并且据我所知不会打开任何事件供我使用.
使用jQuery 1.4.2和jQuery UI 1.8.1
解决方法:
jQuery UI Sortable可以接受任何选择器,但是选择器用于选择在创建可排序项时(而不是在拖动开始时)可排序的项.如果更改DOM,它仍会记住创建可排序项时哪些项可排序.
如果ui.item包含< form> ;,则应该能够从sortstart返回false,但是这似乎暂时不起作用.相反,您可以使用此功能,该功能可以:
$('ul').sortable({
items: '> li',
cancel: 'li:has(form)'
});
标签:jeditable,jquery-ui,jquery-ui-sortable,javascript,jquery 来源: https://codeday.me/bug/20191210/2098689.html