ЛД
Людмила Дмитриева

Вопрос про jquery+css.

Так есть, к примеру тэг див:

text


И есть для него jquery-код:

$('div').click(function(){

$(this).css('background','red');

})

И css-код:

div: hover { background-color: green; }

Визуально можно сообразить, что при наведении в область див, то она становится зеленой (тут работает css-код) ,

а при нажатии на див, то она становится красной (тут работает js-код) , НОООО, после этого не работает css-код, то есть не становится зеленой при наведении, как будто js-код ему "навечно" установил для него стандартный цвет.

И у меня два вопроса к Вам: в чем дело и как можно решить проблему?

Настя Станиславская
Настя Станиславская

В чем дело, вы ответили в вопросе.
Решить можно добавив событие в том же жеквери .mouseout()
А в идеале тогда уже все делать через jquery.

Как-то так:

$('div').click(function(){
$(this).css('background','red');
}).mouseover(function(){
$(this).css('background','green');
}).mouseout(function(){
$(this).css('background','none');
})

БТ
Борис Тарханов

копать в сторону onMouseOut

ЛП
Лида Путятина

тут фишка в том что JS код изменяя элемент делает это прописывая стиль в атрибуте style - этот атрибут всегда имеет самый высокий приоритет поэтому если в нем переопределен например color то из css файла color не проканает соответственно чтобы вернуть все взад можно либо на том же JS убить атрибут style у элемента либо как писали выше плясать с бубном вокруг установки каждого стиля в исходное значение

Похожие вопросы
Динамическое изменение css (js, jquery)
вопрос по html и css
вопрос по jQuery Mobile. Как в мобильной версии сайта замутить карусель jQuery "Carousel"?
Этот вопрос для тех кто знает jquery
Вопрос тем, кто соображает в CSS?
Подскажите пожалуйста, вопрос, про javascript и jquery
вопрос по событиям jquery
Вопрос по HTML и CSS.
Вопрос про jquery. Есть ли простая альтернатива коду?
Добавление в css с помощью jQuery