Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.01.2012, 16:16
Аспирант
Отправить личное сообщение для alexandr_v-vich Посмотреть профиль Найти все сообщения от alexandr_v-vich
 
Регистрация: 30.01.2012
Сообщений: 78

Переменные в replace
Необходимо заменить ClassName:
Есть код
01	<script>
02	var i=0;
03	function light() {  //ссылка, реагирующая на onMouseOver
04	 if (i<4) {
05	    document.getElementsByTagName('a')[1].className += " redtext" + i;
06	    i += 1;
07	    var t = setTimeout("light()", 50);
08	    }
09	}
10	 
11	function nolight() {   //ссылка(она же), реагирующая на onMouseOut
12	 if (i>0) {
13	    document.getElementsByTagName('a')[1].className.replace(/"redtext" + i/, " ");
14	    i -= 1;
15	    var t = setTimeout("nolight()", 50);
16	    }
17	}
18	 
19	</script>

redtext0/1/2/3 - классы стилей с разным text-shadow.
Так вот, добавляется всё отлично, а с "replace" возникли проблемы. Как я понял "i" там не читается как переменная. Что делать, подскажите пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 31.01.2012, 16:27
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

replace не изменяет строку.

https://github.com/Kolyaj/CrossJS/bl...ce/dom.js#L194
Ответить с цитированием
  #3 (permalink)  
Старый 31.01.2012, 16:36
Аспирант
Отправить личное сообщение для alexandr_v-vich Посмотреть профиль Найти все сообщения от alexandr_v-vich
 
Регистрация: 30.01.2012
Сообщений: 78

Я пока новичок в этом.
Не сосвем понял ответ - плохо разбираюсь в регулярных выражениях.
Небольшое дополнение: у ссылки(елемента) есть ещё один класс, который вообще не надо трогать.
Если не сложно прокомментируйте, пожалуйста, ссылку выше.
Ответить с цитированием
  #4 (permalink)  
Старый 31.01.2012, 16:45
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Там универсальная функция для удаления css-класса у элемента. Чуть выше там же функция для добавления класса. Используйте лучше их, если плохо разбираетесь.
Ответить с цитированием
  #5 (permalink)  
Старый 31.01.2012, 16:51
Аспирант
Отправить личное сообщение для alexandr_v-vich Посмотреть профиль Найти все сообщения от alexandr_v-vich
 
Регистрация: 30.01.2012
Сообщений: 78

Нет, вопрос найти скрипт и вставить себе куда нужно не стоит (Вообщем никогда не стоял)
Задача - разобраться на примерах в чём дело..
Просто одной литературы как правило мало бывает.

ну хотя бы вот вторая строка. Как её понять?
el = $(el);
Ответить с цитированием
  #6 (permalink)  
Старый 31.01.2012, 16:58
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от alexandr_v-vich
Задача - разобраться на примерах в чём дело..
Примеры дал, можно разбираться.

Сообщение от alexandr_v-vich
el = $(el);
В самом начале файла есть описание функции $.

Сообщение от nasqad
обогащение элемента
Никакого обогащения
Ответить с цитированием
  #7 (permalink)  
Старый 31.01.2012, 17:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

alexandr_v-vich,
Вы ничему не присваиваите изменённый класс ...
Вариант ...
document.getElementsByTagName('a')[1].className = document.getElementsByTagName('a')[1].className.replace("redtext" + i, " ");
Ответить с цитированием
  #8 (permalink)  
Старый 31.01.2012, 17:30
Аспирант
Отправить личное сообщение для alexandr_v-vich Посмотреть профиль Найти все сообщения от alexandr_v-vich
 
Регистрация: 30.01.2012
Сообщений: 78

рони,
Огромное спасибо! Опять невнимательность...
По началу просто стояло как "-=", потом понял, что нужно через replace, а про присваивание забыл, да.
Спасибо, работает)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с replace! faforty Общие вопросы Javascript 2 28.08.2011 13:10
Сеансовые переменные faiq Серверные языки и технологии 2 24.07.2011 10:32
Нужно сравнить дробные переменные netkent Общие вопросы Javascript 1 05.12.2010 18:30
iframe не выносит переменные nemo Серверные языки и технологии 0 23.01.2010 14:25
переменные и ссылки на переменные scuter Общие вопросы Javascript 6 31.08.2008 01:24