2016-08-24 7 views
-3

Моя страница имеет 2 jQuery dialogs. Когда страница генерируется как <div> элементы имеют одинаковые class определения:Как установить цвет фона заголовка jQuery?

<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix"> 
    <span class="ui-dialog-title" id="ui-dialog-title-dvMonitor">Monitor Status</span> 
</div> 

<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix"> 
    <span class="ui-dialog-title" id="ui-dialog-title-selectMsg">Error</span> 
</div> 

Мне нужно установить фон титул 2-й Диалог на красный. В этом диалоговом окне отобразится сообщение «Ошибка», как указано в элементе span второго <div>.

Я также добавил логики в моем .js файл на неисправного состояния:

$('#ui-dialog-title-selectMsg').parent('.ui-dialog-titlebar').css('background-color', 'red');

Но я до сих пор следующее всплывающее окно:

enter image description here

Как бы мне это сделать?

ответ

0

Добавить класс error на div для второго диалогового окна. Затем в таблице стилей напишите следующее.

.error { 
    background: red; 
} 

Вы можете изменить цвет от red к более хорошему цвету, используя шестнадцатеричные коды. Пример:

.error { 
    background: #EC485B; 
} 

Это даст вам больше кирпично-красный. Играйте с шестнадцатеричными цветовыми кодами, чтобы найти оттенок красного цвета для вашего приложения.

+0

Могу ли я просто добавить 'стиль =" фон: красный "во второе диалоговое окно? – gene

+0

Просто сделал это и фон самого диалога стал красным – gene

+0

@gene Вы можете это сделать, но это не лучшая практика. Вы должны писать свой CSS в отдельный файл. Игнорируйте людей, которые говорят, что делают это с помощью jQuery. Использование javascript для стилей будет слишком дорогостоящим в долгосрочной перспективе, и это плохая привычка. Это сделает ваш сайт медленным. – Sean

0

Я рекомендую решение CSS для этого -

  1. Вы можете добавить стиль в UI-диалоговом титульного selectMsg

    #ui-dialog-title-selectMsg { 
        background: red; 
    } 
    
  2. Или вы можете использовать CSS псевдо-класс

    .ui-dialog-titlebar:nth-child(2) > .ui-dialog-title { 
        background: red; 
    } 
    

Я предположил, что вы чтобы дать цвет фона.

Если вы хотите, чтобы цвет фона для строки заголовка DIV, используйте ниже CSS:

.ui-dialog-titlebar:nth-child(2){ 
     background: red; 
} 
0

, если вы хотите сделать это с помощью JQuery использовать ниже синтаксиса,

$('#ui-dialog-title-selectMsg').parent('.ui-dialog-titlebar').css('background-color','red') 

или если вы wnat пользователю инлайн затем добавить

<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix" style="background:red"> 
     <span class="ui-dialog-title" id="ui-dialog-title-selectMsg">Error</span> 
</div> 

или добавить класс для второго диалога говорит: «эээ-BG ', а затем дать ему стиль.

.err-bg{ 
background: red; 
} 

Избегайте inline css как можно больше.потому что это не рекомендуется

+0

Я попытался вставить синтаксис в файл .js', но в диалоговом окне все еще нет заголовка 'red'. Посмотрите на картинку, которую я добавил в моем вопросе – gene

+0

$ ('# ui-dialog-title-selectMsg'). Parent ('. Ui-dialog-titlebar'). Css ('background', 'none'). Используйте это, а затем $ ('# ui-dialog-title-selectMsg'). Parent ('. Ui-dialog-titlebar'). Css ('background-color', 'red') @gene –

+0

, как только я добавил первая строка при установке фона на none, я начинаю получать ошибку javascript, говоря, что моя функция, где я определяю весь код, не определена – gene

0

Добавить

#ui-dialog-title-selectMsg { 
    color: red; 
} 

в таблицу стилей. Если вы хотите использовать другой цвет, то вы можете использовать http://www.colorpicker.com/ и скопировать шестнадцатеричный код цвета и просто добавить, как следующие (обратите внимание на хэштегом):

#ui-dialog-title-selectMsg { 
    color: #E0412F; 
} 
Смежные вопросы