2010-03-05 173 views
0

我有这样奇怪jQueryUI的对话框错误

$('#add_error').click(function(e) { 
     $('<div>') 
      .load('/someaction/format/html/') 
      .dialog({ 
       title: 'Some title', 
       modal: true, 
       width: 385, 
       close: function() { 
        $(this).remove(); 
       } 
      }); 

     e.preventDefault(); 
    }); 

它工作正常创建对话框,但每三(如果没有它真的第三真正确定)时我点击链接打开的对话框时,出现在Firebug错误

“$(” “)addClass(” UI-插件叠加 “)是未定义”

在dialog.js即一段代码:

var $el = (this.oldInstances.length ? this.oldInstances.splice(0, 1)[0] : $('<div></div>').addClass('ui-widget-overlay')) 
       .appendTo(document.body) 
       .css({ 
        width: this.width(), 
        height: this.height() 
       }); 

下创建:函数(对话框)方法。

奇怪的是,当我删除

close: function() { 
        $(this).remove(); 
       } 

任何想法不会发生这个错误?

+0

哪些是你运行的JQuery/JQuery用户界面的版本? – 2010-03-05 07:24:16

+0

最新的jQuery UI 1.8rc3 – umpirsky 2010-03-05 08:01:49

回答

0

我认为它需要以一种奇怪的方式连接到:ui-widget-overlay。

我只是在我的页面覆盖它是这样的: .ui-dialog-titlebar {display:none; } .ui-widget-overlay {background:#888888;不透明度:0.15;过滤器:阿尔法(不透明度= 15); }

和重写UI的小部件叠加的原因是要因为 以下不起作用 的.ui-对话框的覆盖{背景:#888888;不透明度:0.15;过滤器:阿尔法(不透明度= 15); }

+0

同样的错误。 – umpirsky 2010-03-09 12:15:42

0

Everithing工作与jQuery UI 1.8