Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.07.2011, 00:02
Новичок на форуме
Отправить личное сообщение для SunChase Посмотреть профиль Найти все сообщения от SunChase
 
Регистрация: 07.07.2011
Сообщений: 7

Автоматизация вставки текста в DIVы с одинаковым названием
Доброго времени суток. Начал изучение JS и назрела такая задачка:

Есть такой код:
Код:
<div id="main">
<div id="video"></div>
<div id="video"></div>
<div id="audio"></div>
<div id="video"></div>
</div>
как подступится с помощью JS к элементам с id "video", чтобы можно было в них вставить обычный текст( ...nodeValue ).

В одной из тем форума я нашёл следующее:
Код:
document.getElementBy('main').getElementsByTagName('div')
Но интересует момент отбора элементов исключительно типа main->video

Понимаю что можно к каждому айдишнику video прикрепить порядковый номер, но интересует решение именно такого варианта.

Заранее благодарен за любую полезную информацию
Ответить с цитированием
  #2 (permalink)  
Старый 08.07.2011, 00:06
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

На странице может быть только 1 уникальный id.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 08.07.2011, 00:08
Новичок на форуме
Отправить личное сообщение для SunChase Посмотреть профиль Найти все сообщения от SunChase
 
Регистрация: 07.07.2011
Сообщений: 7

тоесть никак не обойти?
Ответить с цитированием
  #4 (permalink)  
Старый 08.07.2011, 00:16
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Можно по классу.

<div id="main">
 <div class="audio"></div>
 <div class="video"></div>
 <div class="audio"></div>
 <div class="video"></div>
</div>
<script>
array= document.getElementById("main").getElementsByTagName("div");
num=1;
for (i= 0; i!= array.length; ++i)
{
 if (array[i].className=="audio")
  array[i].innerHTML= "audio " + num++;
 else
  array[i].innerHTML= "not audio";
};
</script>
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #5 (permalink)  
Старый 08.07.2011, 00:18
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

И вообще...

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

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

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

Задавайте конкретные вопросы по ходу дела.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #6 (permalink)  
Старый 08.07.2011, 00:21
Новичок на форуме
Отправить личное сообщение для SunChase Посмотреть профиль Найти все сообщения от SunChase
 
Регистрация: 07.07.2011
Сообщений: 7

Спасибо за помощь. По поводу знания JS согласен - сейчас какраз нахожусь в процессе изучения.
Ответить с цитированием
  #7 (permalink)  
Старый 08.07.2011, 00:26
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

если вы переступили таки через черту, и назвали элементы одинаковым ид, то справиться можно гавнокодом :

<div id="main">
<div id="video"></div>
<div id="video"></div>
<div id="audio"></div>
<div id="video"></div>
</div>


<script>
var a = (function(doc){

var divs = doc.getElementById("main").getElementsByTagName('div'),
              b=[],
               i=divs.length;

while( i-->0 )  divs[ i ].id == "video" && b.push( divs[i] );

return b;
})(document);


alert( a )
</script>
Ответить с цитированием
  #8 (permalink)  
Старый 08.07.2011, 00:32
Новичок на форуме
Отправить личное сообщение для SunChase Посмотреть профиль Найти все сообщения от SunChase
 
Регистрация: 07.07.2011
Сообщений: 7

Ну тут была идейка при обработке бб-кода видео файла прикреплять сверху див с номером трека. Думал поправить сам ПХП, но ради образовательных целей решил попробовать решить эту задачку при помощи JS
Ответить с цитированием
Ответ



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

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