【发布时间】:2014-01-02 00:35:59
【问题描述】:
我一直在尝试了解为什么某个 jQuery .sortable() 在某些情况下不会启用任何拖放事件 - 在某个 jQuery 对话框中,我有一个可排序的,我确认该元素在调试时存在 (@987654322 @ 的长度为 1,就在调用 $('theelement').sortable() 之前)。
我通过 Chrome 的检查器验证了事件是否存在,但我看不出任何原因它不会执行在另一个 jQuery 对话框中工作的完全相同的代码,在该对话框中允许拖放重新排序。我已经删除了容器的类,使其与它工作的类相似,以防jQuery('.something theelement').mouseup(function(){return false}) 之类的东西被触发。
我还通过将 sortable 更改为简单的代码来简化代码
<ul target element>
<li>test</li>
<li>test</li>
</ul>
并调用jquery(target element).sortable(),所以这不应该是一些复杂的css或dom问题导致的。
除了通过缩小的jQuery-ui源代码的每一行调试每一步,找到这个问题的根源吗?
【问题讨论】:
-
只是出于好奇,如果您将另一个 ui 方法(如
.draggable())附加到目标元素,它会起作用吗?
标签: javascript jquery jquery-ui-sortable jquery-1.10