Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Решение кросс браузерности свойства style.backgrou 
:(
    Опции темы
dr5y51em
  Дата 2.8.2010, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Kernel error



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 12.12.2008
Где: Новокузнецк

Репутация: нет
Всего: нет



Есть код:
Код

function mouseOut(inid)
{
var obj = getID(inid);
if (obj.style.background != '#6d8fb3')
{
//Срабатывает, хотя данный элемент, имеет фоновый цвет #6d8fb3
};
};


тут проблема кросс браузерности. Код работает в IE и Opera, проблема в Chrome.

(IE, Opera): style.background = #dae1e8
(Crome): style.background = rgb(109, 143, 179)

Что делать?
PM MAIL ICQ Skype   Вверх
SelenIT
Дата 2.8.2010, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Проще всего, на мой взгляд, менять по событию не конкретное св-во, а className. А в классе уже указать и цвет, какой надо, и всё остальное, что понадобится. А вообще в 2010-м году hover-эффект можно и одним CSSом сделать, совсем без JS...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
dr5y51em
Дата 2.8.2010, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Kernel error



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 12.12.2008
Где: Новокузнецк

Репутация: нет
Всего: нет



1)Необходим именно JS, т.к. событие происходит по клику.
2)И классами пользоваться не могу. Нужно решать именно на этом уровне задачу. smile 

з.ы.
Можно конечно через *опу решать задачу, определять сначала, не Chrome ли у нас, а потом обрабатывать событие исходя из браузера, но я надеюсь, что есть более простой выход из положения. 

Это сообщение отредактировал(а) dr5y51em - 2.8.2010, 21:54
PM MAIL ICQ Skype   Вверх
ksnk
Дата 2.8.2010, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Проблема в том, что background - слишком сложное свойство. Нужно пользоваться свойством backgroundColor (для javaScript и background-color - css)

Хотя значительно лучше - завязываться на что-то более контроллируемое - имя класса или ID.

Код

.bg_6d8fb3 {
    background-color:#6d8fb3
}


Код

obj.className!="bg_6d8fb3"



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
dr5y51em
Дата 2.8.2010, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Kernel error



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 12.12.2008
Где: Новокузнецк

Репутация: нет
Всего: нет



Цитата(ksnk @ 2.8.2010,  21:54)
Проблема в том, что background - слишком сложное свойство. Нужно пользоваться свойством backgroundColor (для javaScript и background-color - css)

Сменил на backgroundColor, та же песня. Видимо не решить проблему просто так :(
PM MAIL ICQ Skype   Вверх
dr5y51em
Дата 2.8.2010, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Kernel error



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 12.12.2008
Где: Новокузнецк

Репутация: нет
Всего: нет



Вопрос решён. Выпил пару пилюль "Нетупин". Спасибо за совет, сделал классами. Просто в третьем часу ночи, после рабочего дня, мозг прикипает к черепной коробке и уходит в частичный offline. Спасибо, парни.
PM MAIL ICQ Skype   Вверх
IDVsbruck
Дата 3.8.2010, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Код
if (obj.style.backgroundColor != '#6d8fb3' || obj.style.backgroundColor != 'rgb(109, 143, 179)') {

}

Проверяется банальным алертом.
PM MAIL   Вверх
dr5y51em
Дата 3.8.2010, 06:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Kernel error



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 12.12.2008
Где: Новокузнецк

Репутация: нет
Всего: нет



Цитата(IDVsbruck @ 3.8.2010,  01:20)
Код
if (obj.style.backgroundColor != '#6d8fb3' || obj.style.backgroundColor != 'rgb(109, 143, 179)') {

}

Проверяется банальным алертом.

Я тебя обожаю, спасибо )))))) Я вот уже выспался, голова полна светлых идей.
PM MAIL ICQ Skype   Вверх
ksnk
Дата 3.8.2010, 09:21 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



dr5y51em, ЕСли погуглить, то можно найти еще пару способов указать цвет... 

Еще забавный квест получится, когда дизайнеру захочется сделать "такой-же, тока зеленый..." и будет очень интересно ковырятся в минимизированном уже давно коде и заменять разнокалиберные название одного и того-же цвета...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
IDVsbruck
Дата 3.8.2010, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



100%!
Я-то дал ответ на конкретный вопрос (хром действительно имеено так представляет цвет в стилях), но направление реализации явно не то ...
Делать действительно надо через классы; ну, или через константы задания цвета, если последний-таки задается скриптами. А буквально "выбирать" - потом можно запутаться "по самое не балуйся" ...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0549 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.