我尝试了很多方法但没有成功:(我有两个相互连接的可排序列表。问题是列表“A”可以接受其中的任何列表项。但是列表“B”只能接受具有 class =“abc”的项目
代码如下
<ul id='A'>
<li>item A1</i>
<li>item A2</i>
<li class='abc'>item A3</i>
</ul>
<ul id='B'>
<li class='abc'>item A1</i>
</ul>
我正在尝试的 jquery 代码是
$('#A').sortable({revert: true, connectWith: '#B'})
$('#B').sortable({revert: true, connectWith: '#A', over: function(event, ui){
if(!ui.item.hasClass('abc')){
ui.placeholder.addClass('ui-state-error');
ui.sender.sortable('cancel');
}
}})
有错误的地方请指导一下,谢谢
您可以尝试使用 receive 事件,尽管这样做有点延迟并且 addClass 不起作用:
$('#A').sortable({revert: true, connectWith: '#B'})
$('#B').sortable({revert: true, connectWith: '#A',
receive: function(event, ui){
if(!ui.item.hasClass('abc')){
$(ui.placeholder).addClass('ui-state-error');
$(ui.sender).sortable('cancel');
}}
});
例子 -http://jsfiddle.net/b5ykk/1/ http://jsfiddle.net/b5ykK/1/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)