jQuery UI 拖放/可排序 在Chrome中空白处放置

4

我正在使用jQuery UI可排序函数

Javascript

$('#sortablelist).sortable{
     update: function(ev, ui){...}, 
     placeholder: "ui-state-highlight",
     connectWith: ".ui-sortable" 
}

默认情况下,dropOnEmpty = true,所以我没有设置它。

因为列表是空的,但我想在空列表中给它一个“占位符”目标,所以我给sortablelist div添加了一个额外的辅助类,以便为空的#sortablelist提供一些“表面积”,以便说话时可以将其放入其中(这样当你将元素拖到附加列表上时,你会得到一个占位符)

HTML

<div id="sortablelist" class="ui-sortable ui-sortable-helper"></div>

CSS

.ui-sortable-helpclass {
    height: 100px;
    width: 100%;
}

这在Firefox、IE、Safari中有效,但是占位符不会出现(因此在Google Chrome中没有可放置的区域)。
有什么想法吗?
1个回答

6
唯一解决此问题的方法是向列表添加填充。
#sortablelist {
  padding: 16px 21px !important;
}

您可能不需要使用 !important,我需要它来覆盖一些我无法追踪的更高优先级的填充。


发现问题了(我正在与Jordan一起工作)-我们实际上使用的是span而不是div来容纳元素列表,因此填充没有被应用。将所有元素包装在一个div中,像你建议的那样添加填充,我们就可以继续了!+1并感谢您。 - Erty Seidohl
好的,很高兴你解决了这个问题! - brysgo
终于!这一直困扰着我,但现在它完美地工作了,我简直不敢相信我没想到这个。 - BenjaminRH

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接