我正在使用CKEditor的小部件功能来创建我自己的小部件,并在其中包含jQuery组件。但是,当小部件被拖放时,它会被破坏,并且jquery组件中的所有状态都会丢失。 可以避免这种行为?它是可配置的吗?为什么这是必需的(也许CKEditor团队可以回答这个问题)?CKEditor在拖放上销毁小部件
5
A
回答
8
在拖放过程中,部件被摧毁(并重新初始化),这种行为是无法避免的。
你如何链接你的jQuery组件与widget对象?你的小部件定义是什么样的? (这是您通过editor.widgets.add()
调用传递的对象)。你使用Widget.setData()
/你如何将这个jQuery组件设置为窗口小部件数据?
如果您很难回答这些问题,那么您可以在此处复制粘贴小部件实例的源代码(打开浏览器的开发人员工具并查找具有data-cke-widget-id
属性的元素 - 不要与源模式视图混淆在CKEditor中)。将其粘贴到整个内容中。
小工具将其数据存储在data-cke-widget-data
HTML属性中。一个盲目的猜测是,你要么不在widget上正确设置数据,要么在字符串化后再解析,它不能正确处理jQuery对象。也许你可以使用widget.definition.init
初始化你的jQuery组件并将数据保存为一个普通对象(Widget.setData
)?
你可能也想看看CKEditor widget documentation了解更多信息。
相关问题
- 1. dojox flvideo小部件在AJAX中销毁
- 2. 销毁GtkBuilder是否销毁所有创建的小部件?
- 3. 拖放小部件
- 4. 创建和销毁shieldUI小部件
- 5. 在哪里把默认销毁在jQuery UI 1.8.1小部件的销毁功能
- 6. WordPress的拖放小部件
- 7. 拖放小部件tkinter
- 8. Ckeditor拖放txt文件
- 9. 销毁JQuery可拖动
- 10. 在ExtJS 4中拖放小部件4
- 11. 将外部对象拖放到CKEditor中
- 12. 如何正确销毁CKEditor实例?
- 13. 在tkinter中销毁来自不同子例程的小部件
- 14. 在jQuery UI扩展小部件后销毁不起作用1.8
- 15. CKEditor拖放图像上传问题
- 16. 销毁控件
- 17. 拖放ftp文件上传web小部件
- 18. 调用销毁未知的jQuery小部件
- 19. 如何从其原型中销毁jQuery UI小部件
- 20. 如何销毁PyQt4中的python小部件
- 21. 如何正确销毁gtk.Dialog对象/小部件
- 22. 根据拖动的小部件制作条件拖放效果?
- 23. Perl TK窗口部件销毁
- 24. 拖放大小拖放区
- 25. 如何在角度4应用程序中销毁ckeditor?
- 26. $销毁组件上的指令
- 27. 从Marathon销毁应用程序将其放入部署中。如何在马拉松中销毁应用程序?
- 28. 如何在会话销毁codeigniter上放置计时器?
- 29. angular2销毁视图销毁订阅
- 30. 是否删除容器在GTK内存中的小部件中销毁
因此,一般来说,我必须使用setData存储当前状态,以便在重新创建后可以在小部件拖放时正确恢复它,对吗? –
是的,'Widget.setData'应该将所有内容都保存在widget的data-cke-widget-data属性中,即使在销毁widget之后它也应该可用。 – Comandeer
如果小部件是更复杂的东西(即用户可以扩展的节点的jquery树,那么当我的小部件是DnD时,我必须重新创建整个树),我该怎么办? –