Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.03.2009, 16:42
Интересующийся
Отправить личное сообщение для JooZ Посмотреть профиль Найти все сообщения от JooZ
 
Регистрация: 26.03.2009
Сообщений: 10

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

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


Первый вариант не меняет.
Второй - выдает ошибку (Объект не поддерживается)
Ответить с цитированием
  #2 (permalink)  
Старый 26.03.2009, 18:16
Аспирант
Отправить личное сообщение для IIIEPJIOK Посмотреть профиль Найти все сообщения от IIIEPJIOK
 
Регистрация: 23.12.2008
Сообщений: 75

прошу прощения, но не смог удержаться от вопроса : А за чем использовать для этого jQuery?
Ответить с цитированием
  #3 (permalink)  
Старый 27.03.2009, 07:58
Интересующийся
Отправить личное сообщение для JooZ Посмотреть профиль Найти все сообщения от JooZ
 
Регистрация: 26.03.2009
Сообщений: 10

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

В принципе, я не против других вариантов...
Если можна еще как-то на лету менять это свойство, не стесняйтесь, рассказывайте)
Ответить с цитированием
  #4 (permalink)  
Старый 27.03.2009, 08:25
Аспирант
Отправить личное сообщение для IIIEPJIOK Посмотреть профиль Найти все сообщения от IIIEPJIOK
 
Регистрация: 23.12.2008
Сообщений: 75

Цитата:
А почему бы и нет? )
потому, что задача по
Цитата:
цвет для текста при наведении мышью
решается одной строчкой, а не библиотекой в тысячу строк кода.....
хотя каждый удовлетворяется, как ему нравится ;-)
читаем, думаем, решаем, что удобней
Ответить с цитированием
  #5 (permalink)  
Старый 27.03.2009, 09:38
Интересующийся
Отправить личное сообщение для JooZ Посмотреть профиль Найти все сообщения от JooZ
 
Регистрация: 26.03.2009
Сообщений: 10

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

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

изменить цвет при наведении мышью.
Ответить с цитированием
  #6 (permalink)  
Старый 27.03.2009, 10:20
Аспирант
Отправить личное сообщение для IIIEPJIOK Посмотреть профиль Найти все сообщения от IIIEPJIOK
 
Регистрация: 23.12.2008
Сообщений: 75

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

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

и у вас не останется вопросов по этой теме
Ответить с цитированием
  #7 (permalink)  
Старый 27.03.2009, 16:45
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

JooZ, зачем для этого jquery? Css твою проблему не решает?
Ответить с цитированием
  #8 (permalink)  
Старый 28.03.2009, 00:08
Интересующийся
Отправить личное сообщение для JooZ Посмотреть профиль Найти все сообщения от JooZ
 
Регистрация: 26.03.2009
Сообщений: 10

Не решает.
Потому что пользователь сам выбирает цвета, размер шрифта и другие свойства для своего блока. И после смены какого-то одного свойства надо сразу-же изменить его в блоке, чтобы юзер видел, чего он натворил.
Ответить с цитированием
  #9 (permalink)  
Старый 28.03.2009, 02:00
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

вижу 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";
}
Ответить с цитированием
  #10 (permalink)  
Старый 08.11.2010, 20:34
Аватар для Dobrak
Новичок на форуме
Отправить личное сообщение для Dobrak Посмотреть профиль Найти все сообщения от Dobrak
 
Регистрация: 08.11.2010
Сообщений: 2

Сообщение от JooZ Посмотреть сообщение
Здравствуйте)

В стиле есть строка
Код:
.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");
		});
	});


Надеюсь комунить поможет
Ответить с цитированием
Ответ


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

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