Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jQuery поменять CSS цвет для текста при наведении мышью (.text:hover) (https://javascript.ru/forum/jquery/3194-jquery-pomenyat-css-cvet-dlya-teksta-pri-navedenii-myshyu-text-hover.html)

JooZ 26.03.2009 17:42

jQuery поменять CSS цвет для текста при наведении мышью (.text:hover)
 
Здравствуйте)

В стиле есть строка
Код:

.new_title:hover {color: #0000FF;}
как в jQuery сменить цвет для этого свойства?
$('hover.new_title').css('color','#707070');
$('.new_title:hover').css('color','#707070');


Первый вариант не меняет.
Второй - выдает ошибку (Объект не поддерживается)

IIIEPJIOK 26.03.2009 19:16

прошу прощения, но не смог удержаться от вопроса : А за чем использовать для этого jQuery?

JooZ 27.03.2009 08:58

А почему бы и нет? )

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

IIIEPJIOK 27.03.2009 09:25

Цитата:

А почему бы и нет? )
потому, что задача по
Цитата:

цвет для текста при наведении мышью
решается одной строчкой, а не библиотекой в тысячу строк кода.....
хотя каждый удовлетворяется, как ему нравится ;-)
читаем, думаем, решаем, что удобней

JooZ 27.03.2009 10:38

Ну неужели вы думаете что я прикрутил jQuery только для того, чтобы поменять одно свойство? )

Теперь объясните пожалуйста, как с помощью
document.getElementById("id").style.property="value"

изменить цвет при наведении мышью.

IIIEPJIOK 27.03.2009 11:20

Ну неужели вы думаете что я прикрутил jQuery только для того, чтобы поменять одно свойство? )

Уверен, что это будет супер-мега-крутая штука :)
Прежде чем хвататься за jQuery
читаем это, потом это, и если после это останутся вопросы, то можно и это

и у вас не останется вопросов по этой теме :)

x-yuri 27.03.2009 17:45

JooZ, зачем для этого jquery? Css твою проблему не решает?

JooZ 28.03.2009 01:08

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

x-yuri 28.03.2009 03:00

вижу 3 варианта:
1) с помощью hover назначаешь 2 обработчика, которые изменяют/восстанавливают цвет элемента
2) прописываешь классы соответствующие цветам и в javascript просто изменяешь класс (если классов оказется не много)
3) используешь api для работы с таблицами стилей (не знаю насколько это кросс-браузерно), пример использования:
// Get the first stylesheet of the document
var ss = document.styleSheets[0];

// Get the rules array using W3C or IE API
var rules = ss.cssRules?ss.cssRules:ss.rules;

// Iterate through those rules
for(var i = 0; i < rules.length; i++) {
    var rule = rules[i];
    // Skip @import and other nonstyle rules
    if (!rule.selectorText) continue;

    // This is the text form of the rule
    var ruleText = rule.selectorText + " { " + rule.style.cssText + " }";

    // If the rule specifies a margin, assume it is in pixels and double it
    var margin = parseInt(rule.style.margin);
    if (margin) rule.style.margin = (margin*2) + "px";
}

Dobrak 08.11.2010 21:34

Цитата:

Сообщение от JooZ (Сообщение 15300)
Здравствуйте)

В стиле есть строка
Код:

.new_title:hover {color: #0000FF;}
как в jQuery сменить цвет для этого свойства?
$('hover.new_title').css('color','#707070');
$('.new_title:hover').css('color','#707070');


Первый вариант не меняет.
Второй - выдает ошибку (Объект не поддерживается)

Я подобную дилемму решил вот так:

$(document).ready(function(){
		$(".price").find("tr").hover(function() {
			$(this).toggleClass("color");
		}, function() {
			$(this).toggleClass("color");
		});
	});


Надеюсь комунить поможет :)


Часовой пояс GMT +3, время: 17:27.