jQuery:添加ui-close按钮以调整大小/可拖动?

时间:2010-10-14 17:04:57

标签: javascript jquery jquery-ui jquery-plugins

如何为可拖动/可调整大小的div添加关闭按钮?

我理解我实际上是在描述一个对话框,但我必须能够利用不属于对话框一部分的可调整大小/可拖动(例如包含)的一些属性。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我想我可能有一个解决方案:在页面上的iframe中创建对话框。对话框将包含在iframe中,iframe包含在div中......并且wha-la,对话框具有“包含”。

答案 1 :(得分:0)

更好的解决方案,覆盖ui核心中的包含选项:

_makeDraggable: function() {
    var self = this,
        options = this.options,
        heightBeforeDrag;

    this.uiDialog.draggable({
        cancel: '.ui-dialog-content',
        handle: '.ui-dialog-titlebar',
        containment: 'document', //override this HARD CODED option
        start: function() {
            heightBeforeDrag = options.height;
            $(this).height($(this).height()).addClass("ui-dialog-dragging");
            (options.dragStart && options.dragStart.apply(self.element[0], arguments));
        },
        drag: function() {
            (options.drag && options.drag.apply(self.element[0], arguments));
        },
        stop: function() {
            $(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
            (options.dragStop && options.dragStop.apply(self.element[0], arguments));
            $.ui.dialog.overlay.resize();
        }
    });

我无法相信开发人员对此进行硬编码而不是提供包含选项。这绝对是迟钝的。