jQuery - 如何使用jQuery命令使对话框背景消失?

时间:2012-09-23 15:25:08

标签: jquery

我正在做这样的事情来使对话框出现,并显示一个.gif图像,它基本上是一个微调器,指示用户等待。

$("#loading").dialog({
                height: 140,
                width:160,
                modal: true,
                resizable : true,
                draggable : true,
                closeOnEscape: false
           });

$(".ui-dialog-titlebar").hide();   //No title bar
$(".ui-dialog").css("padding","0px");  //Remove extra spacing

此代码显示微调器,隐藏标题栏但不会删除背景图像,因此看起来很笨拙。有没有办法摆脱使用jQuery的背景?

我不想过多地使用CSS,因为我希望其他对话框看起来很标准。

谢谢!

3 个答案:

答案 0 :(得分:2)

我不确定哪个元素有背景图像,这是摆脱背景图像的常用方法

$(SELECTOR).css('background', 'none');

$(SELECTOR).css('background-image', 'none');

答案 1 :(得分:1)

您可以使用

.dialog( "close" )

参考:

http://jqueryui.com/demos/dialog/#method-close

编辑:

除非你想让它仍然显示,这意味着我误解了这个问题(对不起)。你可以做一些事情,没有背景:

jQuery UI dialog overlay

答案 2 :(得分:0)

这对我有用:

jQuery UI:

$("#div_loading").dialog({
  autoOpen:      false,
  modal:         true,
  dialogClass:   "no-close",
  draggable:     false,
  resizable:     false,
  closeOnEscape: false,
  width:         "auto",
  height:        "auto"
});

//This removes the title bar
$(".ui-widget-header").css("background", "none");
$(".ui-widget-header").css("border", "none");

//This removes the background
$(".ui-widget-content").css("background", "none");
$(".ui-widget-content").css("border", "none");

注意:我使用autoOpen: false,因为只有在单击按钮时才会打开对话框。

<强> HTML:

<div id="div_loading" >
  <img alt="" src="ajax-loader.gif">
</div>