我制作了一些控件,用于编辑加载到应用程序中的特定页面的背景颜色,字体等。
现在,当我更改背景颜色时,整个页面都会获得该颜色。
当然,我不希望我的控制面板(左和右)也改变。
整个页面是作为html表构建的,在中间列中,是一个div,它是我想要编辑的页面。
中间div代码:
<td style = " vertical-align:top" ><% if (Model != null && Model.PublicationID != 0)
{
Html.RenderPartial("TopBar", Model); %>
<div class="xcontainer">
<% foreach (QuartzNew.Models.Edition e in Model.Editions)
{
if (e != null)
{
Model.SelectedEdition = e;
Html.RenderPartial("GridCell", Model); // If SingleIssueShopLayout="Grid" else Html.RenderPartial("SearchResult", Model);
}
}
%>
<% } %>
</div>
</td>
我想执行的Jquery函数:
$('#page-properties-BGcolor-Colorpicker').miniColors({
change: function (hex) {
$('#page-properties-BGcolor-Colorpicker').val(hex)
$("html, body").not($(".Controlpanel")).css("background", hex);
// fillPageValues()
}
});
答案 0 :(得分:0)
您是否尝试过简单地改变:
$("html, body").not($(".Controlpanel")).css("background", hex);
要
$(".xcontainer").css("background", hex);
目前,您的论证范围可能不够具体,无法简单地隔离您希望定位的元素。
答案 1 :(得分:0)
您的选择器会检索html
和body
不是$(".Controlpanel")
这些有点荒谬的元素,因为情况总是如此,并会改变html和body的背景。 / p>
您必须选择要更改的元素,而不是html正文。试试这个:
$('.xcontainer').css("background", hex);