За последние 24 часа нас посетил 21961 программист и 1110 роботов. Сейчас ищут 763 программиста ...

Как через цикл присвоить "i" двум div'ам с одинаковым классом?

Тема в разделе "JavaScript и AJAX", создана пользователем zlojnaxa, 30 ноя 2017.

Метки:
  1. zlojnaxa

    zlojnaxa Активный пользователь

    С нами с:
    18 ноя 2015
    Сообщения:
    47
    Симпатии:
    4
    Здравствуйте! Пожалуйста, помогите разобраться- либо готовым кодом, либо подскажите что посмотреть для решения моей задачи.
    Есть пара div'ов
    HTML:
    1. <div class="curDur">первый</div>
    2. <div class="curDur">второй</div>
    Обращаюсь через JQuery к классу "curDur"
    Код (Javascript):
    1. var curDur = $('.curDur');
    Вопрос в том как у 1-го класса curDur содержимое "первый" заменить на "1", а у "второй" на "2", без прибегания к автоматической пронумеровке через типа attr для каждого класса, надеюсь понятно изложил ? Пробую сделать так
    Код (Javascript):
    1. for(var i = 0; i < 2; i++){
    2.     $('.curDur').html(i);
    3. }
    Пробовал еще таким образом
    Код (Javascript):
    1. for(var i = 0; i < 2; i++){
    2.     curDur[i].html(i);
    3. }
    Но тоже не помогло. Третий день не могу сообразить, помогите пожалуйста.
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.825
    Симпатии:
    738
    Адрес:
    Татарстан
    как то так:
    Код (Javascript):
    1. curDur.each(function (index, element) {
    2.         $(element).html(index);
    3.   });
     
    zlojnaxa нравится это.
  3. zlojnaxa

    zlojnaxa Активный пользователь

    С нами с:
    18 ноя 2015
    Сообщения:
    47
    Симпатии:
    4
    Спасибо большое. Несколько дней сидел кодил, мозги в кучу, туплю, немного не так сформулировал вопрос, много чего не дописал в суть вопроса и в задачу, поэтому извиняюсь. Собственно вот что нужно было сделать, имеется код
    HTML:
    1. <video id="video" class="video">
    2.             <source src="video/1.mp4" type='video/mp4;codecs="avc1.42E01E, mp4a.40.2"' />
    3.             <source src="video/1.webm" type='video/webm; codecs="vorbis,vp8"'/>
    4.         </video>
    5. <video id="video" class="video">
    6.             <source src="video/2.mp4" type='video/mp4;codecs="avc1.42E01E, mp4a.40.2"' />
    7.             <source src="video/2.webm" type='video/webm; codecs="vorbis,vp8"'/>
    8.         </video>
    Код (Javascript):
    1. var video = $('.video');
    2. var current_duration = $('.current_duration');
    Нужно video.duration вынести в div'ы соответствующие каждому из них, то есть 25сек. в длительность 1-го видео, и 30сек. в длительность 2-го видео. Надеюсь понятно излогаю. Понимаю задача совсем не та которую я описал, и снова извиняюсь. Уже и не думал что получится, но твой код как раз то что было нужно! Посидел поковырял его под свои нужды и все получилось. Спасибо еще раз. Вот итог
    Код (Javascript):
    1. current_duration.each(function (index, element) {
    2.     video[index].addEventListener("canplay", function() {
    3.         $(element).html(video[this.num].duration);
    4.     }, false);
    5. });
     
  4. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    @zlojnaxa, вот только значение атрибута id должно быть уникально на страницу...
     
  5. zlojnaxa

    zlojnaxa Активный пользователь

    С нами с:
    18 ноя 2015
    Сообщения:
    47
    Симпатии:
    4
    Спасибо, но я в курсе. Мне он для других целей.
    --- Добавлено ---
    Вообще по сути можно от него избавиться, наверное так и сделаю
    --- Добавлено ---
    Много в чем еще говнокодю, учусь:)
    --- Добавлено ---
    Спасибо всем! Тема закрыта :)