我遇到了jQuery UI的Resizable中的一个错误,试图将其与jQuery UI的对话框一起使用,在给定选择器或DOM元素时它不尊重containment
选项,并且通常在调整大小时表现得非常奇怪。
我基本上是这样做的:
dialog = $('<div>...</div>').dialog(options)
dialog.parent().draggable(options).resizable(options)
所以我需要另一种方法来控制调整大小。
我是否可以通过resize
来电的resizable
回调来模拟遏制?我可以在哪里查看调整大小时div
是否会过大,并将其强制设为可接受的大小?
答案 0 :(得分:0)
根据我的经验,您无法在对话框对象上调用.draggable()
。
它也无助于jQueryUI将每个对话框元素复制到<body>
标记中。
试试这个:
// create the dialog
var w = $('<div>');
...
$(w).dialog(dlg_options);
// reparent the dialog, and reset the draggable options
var dlg = $(w).data('dialog').uiDialog;
$(dlg).appendTo(real_parent);
$(dlg).draggable(drag_options);
请注意,在将来的版本中,隐藏的jQueryUI内部(.uiDialog
)的使用可能中断。