我有一个div元素,点击它会打开一个jQuery UI模式对话框窗口。我想要做的是在模式对话框打开的持续时间内突出显示div元素(意味着更改其颜色),并在关闭对话框窗口时将其恢复为原始状态。是否可以这样做?
使用.css方法更改背景颜色并不像我想要的那样工作。我的代码:
HTML
<div id="help" class="hover">Help</div>
<div id="helpdialog" class="helpbox">
<header id="helptitle">Help</header>
<p id="helptext">
</p>
</div>
JS
$('#help').on('click',function() {
$('#help').css('background-color','#F0E68C');
$( "#helpdialog" ).dialog({
height: 670,
width: 570,
modal: true,
draggable: true,
resizable: false,
dialogClass: "helpbox",
buttons: { Close: function() { $(this).dialog("close");
$('#help').css('background-color',''); } },
create: function(event, ui)
{
$(this).parents(".ui-dialog:first").find(".ui-dialog-titlebar").css("display","none");
$(this).parents(".ui-dialog").css("padding", 0);
$(this).parents(".ui-dialog").css("border", '1em solid #709CB4');
$(this).parents(".ui-dialog").css("border-radius", '0.6em');
$(this).parents(".ui-dialog:first").find(".ui-dialog-content").css("padding",0);
}
});
});
答案 0 :(得分:2)
$('#help').on('click', function() {
$("#helpdialog").dialog({
height : 670,
width : 570,
modal : true,
draggable : true,
resizable : false,
dialogClass : "helpbox",
buttons : {
Close : function() {
$(this).dialog("close");
}
},
create : function(event, ui) {
$(this).parents(".ui-dialog:first").find(".ui-dialog-titlebar")
.css("display", "none");
$(this).parents(".ui-dialog").css("padding", 0);
$(this).parents(".ui-dialog").css("border", '1em solid #709CB4');
$(this).parents(".ui-dialog").css("border-radius", '0.6em');
$(this).parents(".ui-dialog:first").find(".ui-dialog-content").css(
"padding", 0);
},
open : function(event, ui) {
$('#help').css('background-color', '#F0E68C');
},
close : function(event, ui) {
$('#help').css('background-color', '');
}
});
});
答案 1 :(得分:0)
而不是这个
$('#help').css('background-color','');
设置一些颜色
$('#help').css('background-color','#aaa');