Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.04.2010, 17:51
Интересующийся
Отправить личное сообщение для insomnia Посмотреть профиль Найти все сообщения от insomnia
 
Регистрация: 22.06.2009
Сообщений: 11

Изменение текстов при клике
Извините, если повторяюсь, но подобного вопроса не нашла.

Я написала скрипт, но уж очень он огромный и неудобный. Уверена, что можно сократить. Подскажите, пожалуйста.

Есть ссылки, при клике на которые открывается текст, меняется цвет шрифта активной ссылки, и также происходит с остальными. Один текст открывается, остальные закрываются

Вот, что у меня получилось

<a href="javascript:void()" id="l1" style="color:red;" onclick="ChangeText1">Ссылка 1</a>
<a href="javascript:void()" id="l2" onclick="ChangeText2">Ссылка 2</a>
<a href="javascript:void()" id="l3" onclick="ChangeText3">Ссылка 3</a>

<div class="text1" id="t1">Текст 1</div>
<div class="text1" id="t1" style="display:none;">Текст 2</div>
<div class="text1" id="t1" style="display:none;">Текст 3</div>

function ChangeText1(){
document.getElementById("l1").style.color = "#de1800";
document.getElementById("l2").style.color = "#5a5d60";
document.getElementById("l3").style.color = "#5a5d60";

document.getElementById("text1").style.display = "";
document.getElementById("text2").style.display = "none";
document.getElementById("text3").style.display = "none";
}

function ChangeText2(){
document.getElementById("l2").style.color = "#de1800";
document.getElementById("l1").style.color = "#5a5d60";
document.getElementById("l3").style.color = "#5a5d60";

document.getElementById("text1").style.display = "none";
document.getElementById("text2").style.display = "";
document.getElementById("text3").style.display = "none";
}

И также для 3й сслыки, а у меня их 10
Ответить с цитированием
  #2 (permalink)  
Старый 15.04.2010, 17:58
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

используйте циклы, условия, и передачу объекта this в ф-цию обработчик события
Ответить с цитированием
  #3 (permalink)  
Старый 15.04.2010, 18:05
Интересующийся
Отправить личное сообщение для insomnia Посмотреть профиль Найти все сообщения от insomnia
 
Регистрация: 22.06.2009
Сообщений: 11

А могли бы вы привести пример. Я не сильна в JavaScript просто ...
Ответить с цитированием
  #4 (permalink)  
Старый 15.04.2010, 18:11
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Здравствуйте!

Судя по вашему сообщению, вы ну совсем не знаете javascript.

Освойте основы языка и вопрос отпадет сам, полностью или частично.
А с чем не справитесь - поможем.

На сайте javascript можно начать изучать с учебника, раздел Основы javascript.
Возможно, вам также понадобится HTML - учебник есть, например, здесь: http://ru.html.net/tutorials/html/

Задавайте конкретные вопросы по ходу дела.
Ответить с цитированием
  #5 (permalink)  
Старый 15.04.2010, 18:35
Интересующийся
Отправить личное сообщение для insomnia Посмотреть профиль Найти все сообщения от insomnia
 
Регистрация: 22.06.2009
Сообщений: 11

Спасибо. html знаю. Изучать надо, конечно. Но хотелось бы получить ответ на конкретный пример. Я ведь скрипт худо-бедно написала, который работает. Есть такие разделы, где такие вопросы задавать можно вообще?
Ответить с цитированием
  #6 (permalink)  
Старый 15.04.2010, 18:43
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

цикл
условие
операторы сравнения(нужен ===)
пример передачи объекта вызвавшего событие
<a href="#" onclick="func(this);">qwe</a>
<a href="#" onclick="func(this);">asd</a>

function func(obj){
alert(obj.innerHTML)
}

в цункции-обработчике переберите циклом все возможные id-шники, и поменяйте стили для элементов не совпадающих с объектом вызвавшим событие на один стиль, а для вызвавшего на другой стиаль
Ответить с цитированием
  #7 (permalink)  
Старый 15.04.2010, 18:50
Интересующийся
Отправить личное сообщение для insomnia Посмотреть профиль Найти все сообщения от insomnia
 
Регистрация: 22.06.2009
Сообщений: 11

спасибо. буду разбираться
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При клике ссылки, открыть DIV блок, и при клике ещё раз, закрыть его Simon Общие вопросы Javascript 59 28.05.2017 17:31
Двойное действие при клике по ссылке spider Элементы интерфейса 5 10.11.2009 10:43
Закрыть элемент при клике вне его masterm Общие вопросы Javascript 3 31.07.2009 11:27
Смена id при клике Nestor Общие вопросы Javascript 6 04.03.2009 19:10
Dojo может подгружать информацию из пунктов меню только при клике на выбранный пункт? vlad275 Dojo toolkit 0 30.10.2008 15:56