记录的方式似乎是:
$('#sortable').sortable('option', 'placeholder');
但这会向我返回一个对象,而不是我在配置选项中使用的字符串。
我可以通过这种方式获得其他配置选项的值。例如:
$('#sortable').sortable('option', 'opacity');
上面的代码向我返回了我在可排序配置选项中告知的确切值。
这对我来说似乎是个错误。无论如何,如果我无法使用“正常”方式获取placeholder
值,是否还有其他方法可以检索此信息?
编辑:刚刚添加了一个jsFiddle来演示问题 - http://jsfiddle.net/hyBfm/
答案 0 :(得分:0)
确实,这是一个JQuery UI错误。
这是确切的地方: https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.sortable.js#L657
在placeholder
函数中,_createPlaceholder
选项被内部对象无差别覆盖。
因此,当您在创建占位符元素时调用$('#sortable').sortable('option', 'placeholder')
之前时,它会返回您在配置选项中通知的值(正确的行为)。但是,当您在>>拖动某些东西(以及因此创建占位符元素)之后进行相同的调用时,它将返回占位符对象,而不是配置选项字符串(意外的,不正确的行为)。
我试图在http://bugs.jqueryui.com/ticket/8133填写错误 - 但我更改了描述,因为Akismet将其标记为垃圾邮件......描述变得难以阅读。我希望他们能够承认并修复。