我有两个连接列表,#gallery 和#trash。当您在#gallery 中拖动项目时,其平滑且无闪烁。
我希望能够从#trash 拖到画廊。但是,它不允许您这样做。您必须将项目拖到#gallery 的顶部,然后它再次变为活动状态,然后允许您拖动项目。
发生这种情况是因为当 float: left 在其所有子元素上启用时,ul 的高度为 0。添加溢出:隐藏到 ul 将解决此问题,但会重新引入闪烁。
无论我尝试什么,我似乎都无法让两者一起工作。我希望能够从#gallery 拖动到#trash 并在每个div 中单独拖动而不会闪烁。
我在下面有一个完整的演示:http: //jsfiddle.net/w3vvL/67/
正如您将看到的,您无法从#tash 向上拖动到#gallery,除非您将其拖动到#gallery 的最顶部。
我尝试将左侧的浮动更改为 inline-block = 这有效....但是闪烁的 coems 回来了,所以没有成功。
#gallery li{display: inline-block;}
#trash li{display: inline-block;}
还尝试给 ul 一个高度,但它再次引入了闪烁!
我被告知 clearfix 解决方案。解决方案是在 ul 上添加 clearfix(带有 :after 和 :before 的 IE)但我尝试过的没有用(除非我做错了。)
#gallery:after { clear:both; content:'.'; display:block; height:0; line-height:0; font-size:0; visibility:hidden; padding:0; margin:0;}
也发现了这个,但不确定这是否有帮助:
activate: function(en, ui) {
// do something here, height, float, inline, overflow etc?
},
deactivate: function(en, ui) {
// then do something here
},
任何帮助将非常感激。希望有人可以让我摆脱痛苦!我已经厌倦了我能想到的一切。
干杯