Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Работа над сайтом > DHTML/JS/CSS

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 16.04.2004, 16:16
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 1  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
По умолчанию Изменение стиля нескольких Id

Привет! Вот какая штука. Есть, например , на странице сто тэгов <font> с идентификаторами. Идентификаторов, ну, скажем, двадцать. Также есть скрипт, который, реагируя на какое-нибудь содытие, изменяет с (с помощью цикла!!!!!) свойства всех ID.

Моя попытка:

<script language="JavaScript">
var IDsArray = new Array("id0", "id1", "id2", "id3" и т.д.);
var colorsArray = new Array("Aqua", "Black", "Blue", "Gray" и т.д.)
for(i=0; i<IDsArray.length; i++)
{
IDsArray[i].style.color = colorsArray[i];
}
</script>

...провалилась. Есть идеи?
Спасибо.


Последний раз редактировалось Илья К; 16.04.2004 в 16:19.
Старый 16.04.2004, 18:45
mishinaelle вне форума Посмотреть профиль Отправить личное сообщение для mishinaelle Посетить домашнюю страницу mishinaelle Найти все сообщения от mishinaelle
  № 2  
mishinaelle
 
Аватар для mishinaelle

Регистрация: Mar 2003
Адрес: Moscow
Сообщений: 669
Отправить сообщение для mishinaelle с помощью ICQ
попробуй всместо
var IDsArray = new Array("id0", "id1", "id2", "id3" и т.д.);

var IDsArray = new Array(id0, id1, id2, id3 и т.д.);

Старый 16.04.2004, 22:36
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 3  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
Цитата:
Оригинал написал(а) mishinaelle
попробуй всместо
var IDsArray = new Array("id0", "id1", "id2", "id3" и т.д.);

var IDsArray = new Array(id0, id1, id2, id3 и т.д.);

Не, так, к сожалению, не пойдет -- переменные неплохо для начала определять, а потом уж на них ссылаться.

Старый 17.04.2004, 00:58
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 4  
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Код:
for(var i=0; i<document.all.tags("FONT").length; i++)
{
	el = document.all.item(IDsArray[i]);
	el.style.color = colorsArray[i];
}
Попробуй так!
У меня работает.
Чем мог - тем помог.
Или так:
Код:
for(var i=0; i<document.all.tags("FONT").length; i++)
{
	el = document.all.item("ID"+i);
	el.style.color = colorsArray[i];
}


Последний раз редактировалось BlooDHounD; 17.04.2004 в 01:02.
Старый 17.04.2004, 15:05
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 5  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
По умолчанию Или так

Привет! Огромное спасибо. Я чуть-чуть доработал (путем скрещения твоего и моего варианта). Дело в том, что твой скрипт огранивен рамками одного тэга. Другими словами, для десяти РАЗНЫХ тэгов нужно либо писать 10 разных функций, либо зацикливать. Вот оно, искомое:

<script language="JavaScript">
var IDsArray = new Array("id0", "id1", "id2", "id3");
var colorsArray = new Array("Aqua", "Black", "Blue", "Gray")
for(i=0; i<IDsArray.length ; i++)
{
el = document.all.item("ID"+i);
el.style.color = colorsArray[i];
}
</script>

Хотя неизвестно, что лучше. Этот (последний) вариант удобнее для программера, но работать будет чуточку медленнее, так как скрипту приходится проверять все тэги на наличие задонного ID.

Все. Влюбом случае СПАСИБО и удачи во всем!)


Последний раз редактировалось Илья К; 17.04.2004 в 15:07.
Старый 17.04.2004, 15:15
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 6  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
По умолчанию ОШИЬОЧКА ВЫШЛА!!!

Пардон. Мое усовершенствование годится только в том случае, если ни один ID на странице не повторяется и плюс к тому на странице нет других ID, кроме указанных в массиве. Иными словами ни к черту не годится.
Изинения.


Последний раз редактировалось Илья К; 17.04.2004 в 15:17.
Старый 17.04.2004, 15:28
Илья К вне форума Посмотреть профиль Отправить личное сообщение для Илья К Найти все сообщения от Илья К
  № 7  
Илья К

Регистрация: Dec 2002
Адрес: Berlin
Сообщений: 444
По умолчанию Исправил

Я опять попытался усавершенствовать. На сей раз как будто корректно.

<script language="JavaScript">
var IDsArray = new Array("id0", "id1", "id2", "id3");
var colorsArray = new Array("Aqua", "Yellow", "Blue", "Gray")
var i = 0;
for(k=0; k<document.all.length ; k++)
{
if(document.all[k].id == IDsArray[i])
{
el = document.all.item("ID"+i);
el.style.color = colorsArray[i];
i++;
}
}
</script>

Создать новую тему   Часовой пояс GMT +4, время: 08:12.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 08:12.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.