Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.11.2012, 14:35
Интересующийся
Отправить личное сообщение для skeef Посмотреть профиль Найти все сообщения от skeef
 
Регистрация: 13.04.2011
Сообщений: 25

Доступ к CSS параметру
Всем привет!
Есть обычная таблица. Делаю раскраску этой таблицы пользователем, в данном случае изменение цвета подсветки строки.
CSS:
Код:
.bg-sel-simple td {
  background-color: #D1E6FF;            /* s15 */
}
Подсветка строки:
$( "#mtable>tbody>tr" ).hover(
     function () {
	$( this ).addClass("bg-sel-simple" );
     },
     function () {
	$( this ).removeClass( "bg-sel-simple" );
     } );

Меняю цвет:
$( '#s15set' ).ColorPicker( {
                              . . . . .
    onChange:function ( hsb, hex, rgb ) {
	$( '#s15' ).css( 'backgroundColor', '#' + hex );
        $( '.bg-sel-simple' ).css( 'backgroundColor', '#' + hex );
   }
} );

Не меняется параметр background-color CSS класса .bg-sel-simple, хотя проверочный DIV с id s15 цвет исправно меняет.
Вариант таблицы CSS без TD
Код:
.bg-sel-simple {
  background-color: #D1E6FF;            /* s15 */
}
Не прокатывает, потому что в реальной таблице каждый TD имеет свой класс, установленный ранее. Т.е. не происходит подсветка строки.
Помогите выйти из тупика, плз
Ответить с цитированием
  #2 (permalink)  
Старый 12.11.2012, 16:34
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от skeef
Не меняется параметр background-color CSS класса
не класса, а элементов с таким классом.
Ответить с цитированием
  #3 (permalink)  
Старый 12.11.2012, 17:03
Интересующийся
Отправить личное сообщение для skeef Посмотреть профиль Найти все сообщения от skeef
 
Регистрация: 13.04.2011
Сообщений: 25

Сообщение от melky Посмотреть сообщение
не класса, а элементов с таким классом.
Пусть так, только тогда уже не элементов класса, а дочерних элементов (TD), родителям которых (TR) присвоен этот класс.

Как решить проблему - вот в чем вопрос ...
Ответить с цитированием
  #4 (permalink)  
Старый 12.11.2012, 18:04
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от skeef
Как решить проблему - вот в чем вопрос ...
если надо именно лазить в таблице стилей, то это нестабильно - не будет работать, если css файл будет подключаться с чужого домена. лучше собирать элементы в коллекцию, и менять стиль им.

поменять стиль правила в таблице можно так :

<style>
.bg-sel-simple td {
  background-color: #D1E6FF;            /* s15 */
}
</style>
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script>
$.each(document.styleSheets, function () {
    $.each(this.rules || this.cssRules, function () {
        alert( this.selectorText );
        alert( this.style.cssText );
    });
});
</script>


свойство style у правила точно такое же, как у элемента.
Ответить с цитированием
  #5 (permalink)  
Старый 12.11.2012, 19:32
Интересующийся
Отправить личное сообщение для skeef Посмотреть профиль Найти все сообщения от skeef
 
Регистрация: 13.04.2011
Сообщений: 25

ухх чета сложно ... пошел курить - спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получение вычисленного значения css свойства FanAizu jQuery 2 12.03.2014 20:30
JQuery CSS анализатор javascript jQuery 2 15.08.2010 21:27
если (свойство css == 2) свойство css = 1; funkypublic Events/DOM/Window 1 09.06.2010 17:39
Подскажите по CSS меню Александр_1988 Элементы интерфейса 1 17.05.2010 11:58
Доступ к input или css файла bobroff jQuery 7 22.12.2009 22:21