Учим Java Script 14. Работаем с элементами и классами

Поділитися
Вставка
  • Опубліковано 21 січ 2025

КОМЕНТАРІ • 120

  • @другМаша
    @другМаша 3 роки тому +1

    с ума сойти, всего 13 минут (а на х2 еще меньше), а сколько информации полезной!! Спасибо огромное!

  • @kellkomby86
    @kellkomby86 7 років тому +38

    Благодаря вам я понял предназначение this и работу с ним. Спасибо большое)

    • @faust2134
      @faust2134 5 років тому +2

      Тебя запутали, this работает не совсем так как показано в видео

  • @ВалерийДуняк
    @ВалерийДуняк 8 років тому +39

    Отличные уроки - спасибо Вам за то, что делаете!

    • @itgid
      @itgid  8 років тому +11

      Спасибо за комментарий. После таких слов хочется продолжать работать. Завтра будет еще один интересный урок посвященный практической реализации популярного в сети сервиса.

  • @adi4232
    @adi4232 7 років тому +13

    самые лучшие уроки по JS что я встречал! спасибо за ваш труд и конечно большой лайк!

  • @komaibra7988
    @komaibra7988 6 років тому +26

    спустя 2 года вашим урокам всё еще нет аналога)) спасибо вам за уроки

  • @ЛучшеесГорой
    @ЛучшеесГорой 7 років тому +16

    Просто Класс ! Каждый урок заслуживает лайка

  • @famousanonymous5962
    @famousanonymous5962 7 років тому

    Одни из лучших уроков JS на youtube (если не лучшие). Очень все наглядно, содержательно и с пояснениями, что и как работает, чего так обычно не хватает в других туториалах. Спасибо, автор

  • @Алексей-п9л6н
    @Алексей-п9л6н 5 років тому

    Просто суперски!!! 7 строк кода, решен вопрос смены текста в кнопках при клике!!! Александр, Вы - лучший!!! Спасибо огромное!!!

  • @rovnogames8162
    @rovnogames8162 7 років тому +13

    По больше таких преподавателей в универах!! а то дефицит таких людей! спасибо за то что старались сделать эти видео уроки, видно что от души старались!

    • @itgid
      @itgid  7 років тому +15

      Наши универы не готовы ни финансово ни морально поддерживать инициативы работников. Поверьте 10 лет отпахал в универе преподом. Никому не интересно это.

    • @rovnogames8162
      @rovnogames8162 7 років тому +2

      Да вот из за этого что в университетах не могут и не хотят нормально все сделать то есть плана обучение нормального, а не так чисто для вида, вот из за этого интерес в студентов попросту исчезает, ну а те кому не интересно то всегда такие люди есть, только последним временем многовато таких.....................................вот и приходиться те кому действительно это интересно сидеть самому все учить, только получаеться так что ты учишь то что нужно, а сам универ получаеться трата времени.

    • @evgeniyacherevko6633
      @evgeniyacherevko6633 6 років тому

      есть страны, где чхали на дипломы

  • @_Fantom_.
    @_Fantom_. 5 років тому

    Спасибо за очень интересный и познавательный урок! Ваши неспешные и наглядные объяснения, делают урок очень понятным для всех..

  • @nikitaskin6511
    @nikitaskin6511 4 роки тому

    спустя 4 года вашим урокам всё ещё нет аналога)) благодарю за полезные видео!

  • @ВиталикПилипчук-й6ц

    Ваши уроки настоящая находка! Очень доходчиво, хорошая подача. Спасибо большое!!!

  • @MamontovO
    @MamontovO 6 років тому +1

    Спасибо за урок. Как всегда всё ОЧЕНЬ понятно и доступно объясняете. Удачи.

    • @itgid
      @itgid  6 років тому

      Спасибо!

  • @2tanhamon-gameblog480
    @2tanhamon-gameblog480 6 років тому +3

    Спасибо огромное за уроки ! Самые лучшие по JS !

    • @itgid
      @itgid  6 років тому

      Спасибо!

  • @malygos1898
    @malygos1898 7 років тому +4

    Вот этот интересный урок, в том плане что открывает внутреннюю структуру элементов. Теперь понятно откуда взялся innerHTML :)

    • @itgid
      @itgid  7 років тому +1

      Спасибо, старался.

  • @ДаниилЧернавин-ь1о
    @ДаниилЧернавин-ь1о 5 років тому

    Удивительно понятные уроки ! Спасибо вам большое !

  • @ichelsea
    @ichelsea 4 роки тому

    Спасибо вам за подробное объяснение.

  • @МакарПлотников
    @МакарПлотников 6 років тому

    Спасибо вам большое, мне очень интересно и на каждом уроке я узнаю что-то новое!

  • @GrourDenis
    @GrourDenis 6 років тому +1

    огромная благодарность автору!

    • @itgid
      @itgid  6 років тому

      Спасибо! Приятно!

  • @GMorganKIEV
    @GMorganKIEV 7 років тому

    очень доходчиво. Все понятно. Спасибо

  • @Александр-ц4т8в
    @Александр-ц4т8в 6 років тому +1

    Супер урок.

    • @itgid
      @itgid  6 років тому

      Спасибо!

  • @lezgin1823
    @lezgin1823 6 років тому

    реально все отлично!!! очень нравится, как Вы объясняете.!!! спасибо!!!!!!!!!!!!!!! с удовольствием бы брал у Вас уроки, если не дорого))) есть такая возможность?

  • @Synchro13
    @Synchro13 6 років тому

    Вы самый лучший !! )

  • @Видево-я5п
    @Видево-я5п 5 років тому

    Отличный урок

  • @spoonjeee4785
    @spoonjeee4785 6 років тому

    очередное огромное спасибо!)

    • @itgid
      @itgid  6 років тому

      Спасибо!

  • @reptile8675
    @reptile8675 6 років тому +1

    6:00 Чаёк)

    • @itgid
      @itgid  6 років тому

      увы, за годы преподавания голос - больное место, 20 минут говорю и садится полностью, из-за этого курсы и бросил.

  • @stoyariko
    @stoyariko 5 років тому

    спасибо, очень доходчиво!

  • @ЯрославВлас-б6т
    @ЯрославВлас-б6т 5 років тому

    Обясните плиз почему нету скобок () при вызове функции f1
    p[i].onclick = f1;

  • @ichwill421
    @ichwill421 6 років тому +1

    Спасибо! Большое! Огромное! Все понятно.
    По ссылкам на скачивание подвязаны файлы не с этого урока. По остальным урокам не проверял.

  • @tilekmoldaliev7803
    @tilekmoldaliev7803 3 роки тому

    А почему событие onclick второй раз для функции f2 не работает,это событие отмечена в коде как просто строка

  • @_nurakhmetov.a
    @_nurakhmetov.a 5 років тому +1

    почему то у меня не работает
    function f1(){
    alert('hello');
    }
    var i;
    i = document.getElementsByTagName('p');
    console.log(i);
    i[0].onclick = f1;

  • @pavelsamsonenka3155
    @pavelsamsonenka3155 6 років тому

    Супер! Спасибо :D

  • @texno5440
    @texno5440 6 років тому +1

    а можно тему которую вы используете в сублайм? чтоб сделать такое же оформление рабочей среды

    • @itgid
      @itgid  6 років тому

      github.com/buymeasoda/soda-theme

  • @victorkas2279
    @victorkas2279 6 років тому

    Какой плагин выделяет цвет pink?

  • @TheElvis1980
    @TheElvis1980 4 роки тому +2

    Забыл прописать defer, не мог понять почему не работает! ))) 7:20

    • @vip51000
      @vip51000 3 роки тому

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

  • @alexeybakushev1932
    @alexeybakushev1932 6 років тому +1

    Доброе утро! Помогите разобраться, пожалуйста. Не могу понять отчего не работает следующий код:
    var p = document.getElementsByTagName('p');
    console.log(p);
    for (let i = 0; i < p.length; i++) {
    p[i].onclick = f1;
    }
    function f1() {
    alert("Hello!");
    }
    Ошибок не выдает, но и при клике на параграфы не работает. Проверял в Опере и Гугл Хром.
    Так же не работает код:
    var p = document.getElementsByTagName('p');
    console.log(p);
    p[0].onclick = f1;
    function f1() {
    alert("Hello!");
    }
    Но выдает ошибку: main.js:18 Uncaught TypeError: Cannot set property 'onclick' of undefined
    at
    и подчеркивает участок onclick = f1;
    Кстати, а почему у Вас в видео f1 используется без () в строке p[0].onclick = f1;
    ???

    • @pandaskeptic2937
      @pandaskeptic2937 6 років тому

      помоему этот код устарел. у меня тоже не работает

    • @pandaskeptic2937
      @pandaskeptic2937 6 років тому

      Сделай вот так:

      var p = document.getElementsByTagName("p");
      window.onload = function(){
      for (var i = 0; i

    • @АхмедК-т7е
      @АхмедК-т7е 6 років тому

      Alexey Bakushev у меня тоже не работает!

    • @АхмедК-т7е
      @АхмедК-т7е 6 років тому +1

      спасибо мужик помог!

    • @ДаниилЧернавин-ь1о
      @ДаниилЧернавин-ь1о 5 років тому

      У меня оба твои кода работают.

  • @_pheax
    @_pheax 6 років тому

    спасибо, все ясно.

  • @amateurclips7370
    @amateurclips7370 6 років тому

    огонь) спасибо

  • @evgeniyprowork
    @evgeniyprowork 6 років тому +2

    в JS бывает что из за одной ошибки не работает весь код, как я понял для этих целей есть тесты, вероятно что то вроде mocha, я не знаю насколько оно отличается от встроенного дебаггера в браузер и вообще для каких целей, если все таки это нужная вещь, запилите пожалуйста видео на эту тему, у вас лучше всех получается преподнести материал, если в планах такого не предвидится , то посоветуйте в какую сторону смотреть, если вообще это нужно для frontend

    • @itgid
      @itgid  6 років тому

      Постараюсь сделать!

  • @smartclever6646
    @smartclever6646 7 років тому +1

    Подскажите, где набивать руку практикой. Может существует какой нибудь задачник по JS начиная с самых азов? Спасибо!!!

    • @webdev5107
      @webdev5107 6 років тому

      что ни будь нашли? а то уже год туда-сюда гоняю этот js. уроки посмотрю - вроде всё знаю. а практики нет и через мес-два опять ничего не знаю и уроки смотреть)
      если нашли можете поделиться?)

    • @reeltwodialogtracktwo7666
      @reeltwodialogtracktwo7666 6 років тому

      Девид Флиган - "JavaScript. Подробное руководство" Там и теория и практика, и много ещё чего интересного.

    • @webdev5107
      @webdev5107 6 років тому

      ReelTWO DialogtrackTWO, попробую, спасибо.

  • @victorkas2279
    @victorkas2279 6 років тому +1

    Почему такая функция не работает?
    for( i = 0; i < p.length; i++){
    p[i].onclick = f1;
    }
    function f1(){
    console.log('work')
    p[i].style.background = 'hsl(0, 50%, 50%)';
    }
    не меняет цвет бэкграунда?

    • @itgid
      @itgid  6 років тому +2

      напишите вместо p[i].style.background this.style.background - заработает. Внутри функция не знает что такое p[i]

    • @victorkas2279
      @victorkas2279 6 років тому

      Благодарю!

    • @shatikshatik6496
      @shatikshatik6496 6 років тому

      тоже как самое первое решение написал внутри функции p[i]. Но все же не совсем понял почему функция не знает p[i]. Ей же переменная i передается.

    • @TigraDP
      @TigraDP 6 років тому

      Наоборот, переменной p[i] передается функция f1. А так как в данном случае p[i] не глобальная переменная, то f1 про нее ничего не знает.

  • @Vikosha123
    @Vikosha123 5 років тому

    Добрый день!
    Спасибо большое за урок!
    Хотелось бы поинтересоваться: а почему при повторном клике на элементы с классом, не срабатывает функция со сменой фона?
    Ведь элементы с классом one попадают в массив р.

  • @johhnybee
    @johhnybee 6 років тому

    Дякую!

  • @ВиталийСлободянюк-х8м

    Правильно я поняв что есть конструкция getElementBy, а дальше мы указываем без пробела к чему обращаемся...то есть class/id/tag ?

  • @gurudk3378
    @gurudk3378 6 років тому

    Не зрозуміло, чому на параграф 1 і 5 не подіяла функція f1, а тільки f2, хоча f1 розповсюджується на всі .

  • @zhl8412
    @zhl8412 7 років тому

    а что, разве 3:01 третья строка- разве не надо скобок после f1?

    • @itgid
      @itgid  7 років тому +2

      скобки ставите там, где хотите чтобы функция выполнилась

  • @wepko
    @wepko 7 років тому +2

    Ааа, я понел как работает this , спасибо огромное !!!

    • @itgid
      @itgid  7 років тому +2

      По мне это очень сложно - наверное самое сложное в JS

    • @faust2134
      @faust2134 5 років тому +1

      Нет, ты не понял

    • @faust2134
      @faust2134 5 років тому

      @@itgid сложнее чем прототипное наследование? Хз
      Ты бы лучше об"яснил правильно почему в данном случае this возвращает елемент.
      Не потому что "this это наш елемент", а потому что this это контекст, а метод мы вызываем в контексте елемента

  • @taniak6007
    @taniak6007 6 років тому +3

    Почему параграфы 2 и 5 реагируют только на функцию f2 и не реагируют на f1? Ведь f1 же на все параграфы распостраняется.

    • @itgid
      @itgid  6 років тому +2

      у параграфа есть свойство onclick. Когда мы назначаем f2 мы затерли функцию f1 для данных параграфов.

    • @taniak6007
      @taniak6007 6 років тому

      спасибо за ответ)

  • @ОлегШумовський-л9я
    @ОлегШумовський-л9я 6 років тому

    Дуже цікаво, коли написав ось так:
    var p = document.getElementsByTagName('p');
    console.log(p);
    p.onclick = f1();
    function f1() {
    alert('Hello');
    };
    То все відпрацювало, але коли додаю індекс масива то при нажатті по ньому він не відпрацьовує.
    Але якщо написати ось так p[0].onclick = f1; то при нажатті все працює.

  • @shatikshatik6496
    @shatikshatik6496 6 років тому

    Почему не срабатывает функция pink внутри функции f1?
    function f1() {
    pink();
    }
    function pink() {
    this.style.background = 'pink';
    }

    • @TigraDP
      @TigraDP 6 років тому

      Потому что вы не пояснили, что такое pink().
      function f1() {
      function pink();
      }
      Думаю надо так.

  • @АртемАлексеенко-й2ъ

    Спасибо большое за понятные уроки!
    Скажите пожалуйста, почему не получается использовать в цикле "механизм" (не знаю как это назвать) for... of:
    for (let i of p) {
    p[i].onclick = f1;
    }

    • @itgid
      @itgid  6 років тому

      Синтаксис правильный, выложите весь код на codepen. помогу

    • @АртемАлексеенко-й2ъ
      @АртемАлексеенко-й2ъ 6 років тому +1

      Спасибо за желание помочь.
      Вот ссылка: codepen.io/SaggyA/pen/VjjpWZ
      Консоль при обработке for... of выдает такую ошибку: "Uncaught TypeError: Cannot set property 'onclick' of undefined". И при этом не выполняется даже f2, цикл которой задан "классическим" способом"

    • @itgid
      @itgid  6 років тому

      codepen.io/luschenko/pen/JLEVxj?editors=1111
      Смотрите, ошибка в том, что в данном цикле переменная i - не счетчик, а сам объект. Т.е. вы должны не p[i].onclick, а i.onclick писать. Тогда все работает. И лучше ее не i - называть, это сбивает с толку, а как-то типа singleElem

    • @АртемАлексеенко-й2ъ
      @АртемАлексеенко-й2ъ 6 років тому

      Спасибо большое за ответ!
      А почему не работала функция f2()? Скрипт "спотыкался" на ошибке и дальше не шел?

    • @itgid
      @itgid  6 років тому

      Да, javascript в этом очень хитрый. Ошибка в одном скрипте а не работают везде.

  • @marialite6964
    @marialite6964 6 років тому +3

    ЗЫС :)

  • @sinaktenone9882
    @sinaktenone9882 7 років тому

    не работает функция, в инструментах пишет Uncaught SyntaxError: Unexpected identifier, в чем может быть причина?
    var p = document.getElementsByTagName('p');
    console.log(p);
    p[0].onclick = f1;
    Function f1 (){
    alert('hello');
    }

    • @itgid
      @itgid  7 років тому +1

      не может получить элементы со страницы.

    • @sinaktenone9882
      @sinaktenone9882 7 років тому

      а чем может быть причина, все подключено, алерт выводит коллекцию, припопытке выведения любого элемента массива пишет андефайнд,
      var p = document.getElementsByTagName('p');
      console.log(p);
      alert(p[0]);

    • @itgid
      @itgid  7 років тому +1

      Скиньте код в codepen и пришлите ссылку.

    • @sinaktenone9882
      @sinaktenone9882 7 років тому

      codepen.io/anon/pen/EXoKgK
      в кодпене все работает, а в браузере нет, не могу понять, в любом случае спс)

    • @itgid
      @itgid  7 років тому +4

      Просто подключите скрипт указанной строкой. Либо перенесите ваше подключение в самый низ, перед закрывающимся тегом body.

  • @igortagintsev2737
    @igortagintsev2737 7 років тому

    Что-то не работает :(

    • @NightWooooolf
      @NightWooooolf 7 років тому +2

      скорей всего вы уже поняли проблему, но а если нет, два варианта ( с этой проблемой и я сталкивался свое время)
      1) автор подключает js код отдельным файлом, а вы в файле html подключаете джава скрипт без команды defer . или же просто подключите данный код перед закрывающим тегом body
      2) опечатка в коде.

    • @oleeynaa
      @oleeynaa Рік тому

      @@NightWooooolfДякую!! спрацювало!!

  • @ВиталийСлободянюк-х8м

    То есть мы сегодня работали как всегда смысле с id и DOM только без него смысле с тегом и DOM?)

  • @pavelladan3887
    @pavelladan3887 8 років тому +2

    тут как-то не понятно что значит 'work'

    • @NightWooooolf
      @NightWooooolf 7 років тому +4

      если думать логически, то в переводе на русский означает сработало.
      вы можете написать вместо слова "work" хоть слово " Яичко" , оно все равно будет работать. считайте это слово некой переменной)

  • @viacheslavgava3430
    @viacheslavgava3430 5 років тому

    1000 👍 против 1 👎. Александр, вас даже хэйтеры любят)

  • @BillGates-ry3dk
    @BillGates-ry3dk 5 років тому

    Зысь))))
    Дыс

  • @timyrfilatov4315
    @timyrfilatov4315 5 років тому

    Как перебрать элементы, проверяя length их текстового содержимого?
    Допустим в html прописано следующее
    1111111111111111111111 ldksfj
    33333333333333333333333333 ldksfj
    как мне в java skript перебрать элементы, проверяя length их текстового содержимое. Где текста больше ссылка должна о ставиться, где меньше удалится?. Мне просто завтра уже надо показывать скрипт времени уже почти не осталось. А иначе практику не засчитают. На вас последняя надежда. Уже нет времени обучатся.

  • @ИяИя-п2к
    @ИяИя-п2к 5 років тому

    Так интересно, кто же ставит дизлайки?

  • @pavelkovalenko7752
    @pavelkovalenko7752 5 років тому +1

    спустя два года на видео 1 дизлайк????

    • @itgid
      @itgid  5 років тому +2

      Pavel Kovalenko я красавчик