首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可能不允许jQuery可排序项在同一列表中移动,但是否可以与其他列表一起移动?

可能不允许jQuery可排序项在同一列表中移动,但是否可以与其他列表一起移动?
EN

Stack Overflow用户
提问于 2011-10-04 01:45:32
回答 1查看 2.1K关注 0票数 3

我有两个连接的可排序列表:list_blist_a。我想要完成的是只允许在list_b中出现可见占位符。list_a只用于从list_a中提取占位符,所以我不希望占位符在list_a中被拖动(至少是占用空间的可见占位符),但我希望list_b在从list_a中拖动占位符时显示占位符。

基本上:

  • list_a项到list_b =在list_b

中显示占位符

  • list_b项到list_b =在list_b

中显示占位符

  • list_a item to list_a =不显示占位符,或使用样式显示的占位符:none;在list_a

  • list_b item to list_a =不显示占位符,或使用样式显示的占位符:none;在list_a

jQuery:

代码语言:javascript
运行
复制
$( "#list_a, #list_b" ).sortable({
connectWith: ".connected_sortable",
start: function (e, ui) {
  //Closest I can get but now both lists don't show placeholders.
  if(ui.item.context.parentNode.id != 'destination_list')
    ui.placeholder.hide();
},
}).disableSelection();

HTML:

代码语言:javascript
运行
复制
<ul id="list_a" class="connected_sortable">
  <li value="0">test text</li>
  <li value="1">test text</li>
</ul>

<ul id="list_b" class="connected_sortable">
  <li value="2">test text</li>
</ul>

除了将jQuery拖放插件与可排序插件组合之外,还有什么方法可以这样做吗?我不想这样做,因为我在一起使用这两个插件时遇到了一些jQuery错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-07 07:21:08

js Fiddle example for my answer

您可以让list_a连接到list_b,但不能将list_b连接到list_a。这样,将list_b项拖到list_a是不可能的。示例:

代码语言:javascript
运行
复制
$( "#list_a" ).sortable({
    connectWith: "#list_b"
});
$( "#list_b" ).sortable({
    placeholder: "placeholder"
});

$( "#list_a, #list_b" ).disableSelection();

但是,如果您只想隐藏占位符,那么您可以使用css完成此操作:

代码语言:javascript
运行
复制
#list_a .placeholder {display:none}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7642512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档