Бесконечный слайдер на JavaScript

Поділитися
Вставка
  • Опубліковано 2 лис 2024

КОМЕНТАРІ • 143

  • @ОлегБыков-р3с
    @ОлегБыков-р3с 5 років тому +21

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

  • @CreatorDreamer
    @CreatorDreamer 11 місяців тому

    Спасибо за проделанную Вами работу, спасибо за уделенное время! У вас талант объяснять!

  • @БулатШарипов-д9с
    @БулатШарипов-д9с 3 роки тому +1

    Именно то, что мне нужно было. По началу этого видео я понял принцип работы подобных слайдеров, что для меня было не понятно. Спасибо за подсказку!)

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

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

  • @Sashad2003
    @Sashad2003 2 роки тому +1

    Отличный урок. Именно то что мне нужно было. Спасибо 👍🏻

  • @mikhail_shokun
    @mikhail_shokun 2 роки тому

    спасибо, сейчас так же найду у вас на канале чтобы можно было и вправо листать, и чтобы он сам листался по таймеру, ну и стрелочки с кружечками добавить)))

  • @dimd8824
    @dimd8824 5 років тому +12

    хорошее видео!
    как вариант вместо setTimeout можно использовать событие transitionend

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

      Так даже лучше будет! Спасибо за наводку.

    • @АсланКосшанов
      @АсланКосшанов 4 роки тому

      Да, только потом слушателю нужно будет установить третьим параметром флаг once:true, чтобы при каждом клике не генерировался очередной слушатель

  • @alexdenuke
    @alexdenuke 2 роки тому

    Пожалуй идеальный слайдер который я видел, годно !

  • @АлександрНастыченко-с9с

    Полезный урок про слайдер на js. Рекомендую!

  • @illiabulgakov2013
    @illiabulgakov2013 7 місяців тому

    Спасибо за вашу работу, все чётко и понятно объяснили!!!

    • @itgid
      @itgid  7 місяців тому +1

      Рад!

  • @ІванШвець-л2ь
    @ІванШвець-л2ь 3 роки тому +3

    Александр, спасибо Вам за урок. Хотелось бы посмотреть как это осуществить на две кнопки - вперед,назад.

  • @WinchesterD
    @WinchesterD 2 роки тому

    Спасибо за урок, помогает решить мою задачу.

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

    Вы очень доступно и понятно объясняете, за это огромное спасибо. Учусь на itgid, по вашим видио. Решил приобрести необходимые мне курсы. Также хочу добавить, Vue.js и Angular - хотел бы видеть на itgid.
    Что я бы изменил в слайдере: слайдер сам должен переключать изображения (по тайму).

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

    Супер! Именно профи - наставник.

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

    Дуже дякую за відео. Будь -ласка, продовжуйте далі додавати матеріали. Ваші відео надихають!)

  • @daredevil_37
    @daredevil_37 2 роки тому

    велике спасибі за цікавий та практичний урок)

  • @AndrewRubanov
    @AndrewRubanov 2 роки тому

    Отлично объяснил, легко и понятно для новичка!

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

    очень интересно увидеть урок по свайпу на слайдере, везде где смотрел, только через библиотеки, на чистом JS не находил

  • @WebSP-q7e
    @WebSP-q7e 5 років тому

    Классное видео! Спасибо!:) Делал бесконечный слайдер через индексы слайдов, а тут через удаление и вставку, круто!:) Будет здорово, если появится урок по слайдеру через индексы слайдов:)

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

    Коммент в поддержку.
    Отличный материал!

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

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

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

      #slider{
      width: 80vw;
      height: 80vw;
      position: relative;
      max-width: 500px;
      max-height: 500px;
      margin: 0 auto;
      margin-top: 80px;
      /* overflow: hidden;*/
      }
      .slide{
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      transition: all ease 0.5s;
      }

  • @СейтекБегалиев
    @СейтекБегалиев 3 роки тому +2

    Я *тот который заметил опечатку но не исправил ее потому что сомневался в правильности выбора:
    Я ВСЕГО ЛИШЬ СЛЕПО ВЕРИЛ ТЕБЕ!!1!! А ТЫ ПОСМЕЛ ТАК НАГЛО ОБМАНУТЬ МЕНЯ!!!!!

    • @itgid
      @itgid  3 роки тому +1

      Увы мне

    • @Krypton2088
      @Krypton2088 3 роки тому +1

      Что за опечатка?? И почему когда меняешь фото картинки не отображается???

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

    Спасибо за то, что я вас нашел. Это топовый контент.

  • @artemmolot2474
    @artemmolot2474 3 роки тому +2

    Всем привет, подскажите как сделать?
    Чтобы он двигался вправо.

  • @СимоновИван-т8х
    @СимоновИван-т8х 5 років тому

    Отличное видео! спасибо за подробный разбор,без overflow даже симпатичнее)

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

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

  • @denisb8476
    @denisb8476 2 роки тому

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

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

    Это то, что я искал! Спасибо

  • @ВикторОрлянский-я5ц

    Супер! Спасибо за урок!

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

    Отличное видео, хотелось бы увидеть адаптивный слайдер, что бы работало на захват курсором (палцьем на сенсоре)

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

      Сейчас думаю о подготовке курса тач на js.

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

    Крутое видео!! Оно мне помогло в выполнении тз))

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

    Спасибо большое, сейчас очень вовремя!

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

    Спасибо, полезное видео. Но желательно бы добавить пролистывание и в другую сторону

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

    Крутой урок! Мне помогло решить проблему со слайдером

  • @ByteMod
    @ByteMod 5 років тому +3

    Я думаю в современных реалиях использовать query селекторы и присваивать функции на "on-события" это, скажем так, непрофессионально.
    Намного лучше использовать альтернативы в виде getElement.. и addEventListener, потому что при использовании query-селекторов по сути парсится весь документ, а при использовании getElement нужный элемент берется из "дерева узлов", который современные браузеры делают на лету. Если в присвоенной на on-событие функции пойдет что-то не то, например она будет долго выполнятся, то на время выполнения заморозится весь документ, а с использование AddEventListener такого не будет.
    Вы конечно можете сказать, что это сделано "для поддержки старых браузеров", но зачем тогда использовать let, вместо var?
    Забавно смотреть на такие неграмотные примеры от людей, которые продают курсы.

  • @Krypton2088
    @Krypton2088 3 роки тому +1

    У меня выходит ошибка Failed to load resource: net::ERR_FILE_NOT_FOUND

  • @СусловРостислав
    @СусловРостислав 3 роки тому

    Урааааааааа!))) Это он!)

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

      у меня выходит ошибка Failed to load resource: net::ERR_FILE_NOT_FOUND

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

    Снимите пожалуйста видео о "переборе сложносоставных объектов и массивов"

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

      да как бы нужна красивая практическая задача. В принципе поищу.

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

      спасибо за урок - видео супер!
      @@itgid как вариант - сделать вертикальную зацикленную прокрутку изображений по 5 в ряд (такое нескончаемое портфолио) (выводится на страницу скажем 15 изображений, всего имеется 45 (т.е. 30 не видны и подгружаются при прокрутке страницы колесом мышки или прокруткой на планшете), получается необходимо все изображения из html разбить на массивы по 5 и потом эти массивы подгружать (я так думаю)

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

    Тотько вот смотрел skick слайдер а тут у же новое видео спасибо за труд

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

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

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

      А нельзя transform scale применить?

  • @Сергей-э8о6м
    @Сергей-э8о6м 4 роки тому +3

    Ребята, а как сделать такой же слайдер, но чтоб в онке отображались 3 изображения а не 1? Автору спасибо за его уроки.

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

    Доброй ночи. Было бы хорошо если вы сделаете уроки по vue js с реальными примерами с разными нетривиальными вещами. Спасибо.

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

      по vue.js возможно будет курс в апреле месяце.

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

      @@itgid Дякую!

  • @Дмитрий-в8н2з
    @Дмитрий-в8н2з 2 роки тому

    Как сделать чтобы вместо картинок выводились блоки div?

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

    спасибо за видеоурок

  • @АлексейДавыдов-с2ч

    очень познавательно спасибо. Но есть проблема Как сделать такой слайдер адаптивным и отзывчивым

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

    как всегда супер

  • @Алексей-б3ц6в
    @Алексей-б3ц6в 4 роки тому

    эх уроки топ, спасибо

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

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

  • @ИванКанищев-о8л
    @ИванКанищев-о8л 4 роки тому +2

    Александр, спасибо! Очень полезный контент. Я потратил много времени, чтобы заставить слайдер листаться вправо. Но, к сожалению, не получается. Может подскажете как это сделать? Заранее спасибо!

  • @ДмитрийРоманов-м8ш

    Супер!

  • @алексейжучков-я8и
    @алексейжучков-я8и 3 роки тому

    полезное видео, спасибо

  • @ОтабекАкбаров-е3д
    @ОтабекАкбаров-е3д 2 роки тому

    спасибо за видос

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

    В 4 строке, где у нас цикл, у меня slides.length = undefined. Почему?

  • @АлександрМорженко-поэткаменног

    Откуда вы все методы эти помните ?????

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

    Я знаю, что уже старое видео, но при просмотре задумался, а не проще ли это сделать через три класса для изображения? Активного, которое будет по центру, класса left и класса right, привязать switch классов к счётчику и длине массива, который будет получать в себя все изображения в рамках блока слайдера и проходится по ним счётчиком? Прошу прощения, сам учусь и просто озвучиваю мысли.

  • @ИванВерушкин-в7ю
    @ИванВерушкин-в7ю 3 роки тому +1

    Вот вы реализуете зацикленность добавлением-удалением картинок. Но что если элементы - не картинки, некий дивы с анимированным контентом внутри, которые так же нужно крутить-вертеть?

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

    Спасибо за урок! Если вы обратили внимание, то нижний текст постоянно прыгает при смещении изображений. Как избежать подобного эффекта?

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

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

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

      WebDev с нуля. Канал Алекса Лущенко, Спасибо! Не очевидное для меня решение)

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

    Спасибо за урок, хотелось бы увидеть как сделать слайдер с анимациями, будут ли такие уроки ? имею ввиду не простые эффекты)

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

      Например?

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

      @@itgid например с 3d трансформациями

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

      @@mister_robot01 ну это же тоже css, я думал что вы JS имеете ввиду.

    • @mister_robot01
      @mister_robot01 5 років тому +3

      @@itgid ну я хочу увидеть анимации на js, а не на css. Видел слайдер, который прокручивается в две стороны, т.е картинка делится на две части и одна часть идет вверх а другая вниз, это тоже css? Было бы круто, еслиб были уроки про такие нестандартные анимации)

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

    Спасибо очень классный урок хотелось бы сделать так чтоб были 3 картинки а не одна, скажите это реально ? именно в вашем слайдере.

  •  4 роки тому +1

    У меня в консоль выводится NodeList(0);(

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

      значить неправильно класс написали.

    •  4 роки тому

      @@itgid правильный

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

    Реализовал этот слайдер так же, но вместо HTML верстки в php попросил вывести все изображения в папке (на Вашем же курсе по php научился), и теперь вообще плевать сколько изображений надо вывести :)
    Теперь хочу через тег figure научиться это делать, что бы подписи тоже менялись...

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

      @@dim_am наверно от уровня зависит, но мне, как нулю, хватило что бы продолжить самостоятельное обучение без особых заморочек (а если и появляются, то автор поддерживает даже после курсов)

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

    Классное решение! Буквально на днях пришлось на одном из сайтов переделывать бесконечный слайдер. Но остановился на варианте, когда все слайды быстро перелистываются к первому. И еще был такой момент, что слайдер, работающий в автоматическом режиме, в случае, если пользователь не закрыл страницу, а открыл новую вкладку или просто перешел в уже открытую вкладку на какое-то время и потом возвращается на страницу со слайдером, то слайды начинают быстро мелькать, как бы догоняя упущенное время)) После того, как они "догнали" время, слайдер начинает работать в нормальном режиме. Александр, я думаю, что вы тоже с таким сталкивались. Хотелось бы узнать, есть ли у вас для такого случая решения? Я нашел решение этой проблемы. Но хотелось бы узнать и ваше

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

    как раз хотел на js

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

    Не совсем понятно,почему в функции left нужно вводит переменную offset 2.Она же все равно будет равна нулю...

  • @itsollustrifugate6955
    @itsollustrifugate6955 5 років тому +3

    Все круто, а исходников нет(((

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

    У меня 7 картинок а в слайдере прокручивается только 4 в чем может быть проблема?

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

      длина задана не корректно. Ну или выложите код на codepen - посмотрю.

  • @TNT-pv5yl
    @TNT-pv5yl 5 років тому +1

    cпасибо за видео и у меня получилось

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

      Это очень круто!

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

    Отлично!

  • @дилдорахайитова-б1ы

    Здравствуйте. А курс у вас бесплатный? Там все можно найти?

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

      Нет не бесплатный.

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

    Хочется увидеть как сделать слайдер с несколькими видимыми изображениями

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

      @@Erudite. да это все подгонка в css, нет адаптивности

    • @АлександрШатохин-н7г
      @АлександрШатохин-н7г 5 років тому +2

      Поддержу, Александр , просьба сделать бесконечный слайдер к примеру с 3-мя изображениями,

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

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

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

      в css привязаться к vmin и постоянно через js определять размеры блока слайдера и подставлять это значение вместо 512 в infinity.js? длинно как-то.. как короче сделать?

  • @МаксимКуц-з5х
    @МаксимКуц-з5х 4 роки тому

    Получилось настроить в обратную сторону по аналогии, но что бы листалось вправо и влево при помощи кнопок - настроить так и не получилось(. можно сбросить вам код что б вы подсказали что не так?

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

      у меня выходит ошибка Failed to load resource: net::ERR_FILE_NOT_FOUND

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

    Не совсем понятно, почему, если document.onclick = null, эту функция отрабатывет в самый первый раз, сдвигая картинки, я так полагаю, раз указано это свойство, значит оно и первый раз не должно отработать.

  • @УлугбекИбрагимов-г1я

    Спасибо!

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

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

    • @ded-pihto
      @ded-pihto 5 років тому

      если для сайта, а не для обучения, есть Owl Carousel

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

      @@ded-pihto нелюблю плагины, мне нужно именно на чистом js, негде видео не могу найти

    • @ded-pihto
      @ded-pihto 5 років тому

      @@ericenderson3415 по сути точки это те же картинки и они перемещаются с помощью похожей функции

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

      @@ded-pihto да мне не только точки, хочу посмотреть как делается бесконечный слайдер

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

    Александр, спасибо за вашу работу! Отличный контент. У меня вопрос. После 3-ей картинки в слайдере 4-ая и 5-ая картинка отображаются пустыми, как и весь слайдер дальше после 3-ей картинки. Все картинки находятся в одном месте. Не могу понять, почему так происходит. Если кто-то понимает о чем идет речь, пожалуйста, помогите.)))

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

      если ты решил эту проблему скажи мне. у меня такая же фигня как и у 100% дураков которые сделали этот слайдер

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

    Спасибо за урок, Алекс! Почему-то не работает в Internet Explorer...

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

      В какой версии?

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

      @@itgid
      Internet Explorer 11 11.523.17134.0
      Может быть, я где-то ошибся в коде. В Хроме, Мозиле и в Эдже все работает корректно.

  • @valikprikhodko8559
    @valikprikhodko8559 2 роки тому

    Сделайте, пожалуйста, видео, в котором слайдер будет состоять не только из одних картинок, а и из блоков, в которых и img, и p, и div...У вас все видео про слайдер только из одних картинок, как сделать слайдер из блоков?

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

      можно взять вместо img, div с его содержимым

  • @bleckVirus
    @bleckVirus 2 роки тому

    спасибо

  • @ЧынгызДжумадылов-о5я
    @ЧынгызДжумадылов-о5я 10 місяців тому

    💥

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

    Не понял,зачем нужен : slides[i].remove()?;

    • @TNT-pv5yl
      @TNT-pv5yl 5 років тому

      чтобы удалить элементы

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

      @@TNT-pv5yl чтобы удалить,я понял.Мне не понятна логика.

    • @kapotonai
      @kapotonai 4 роки тому +1

      @@TNT-pv5yl пересмотрел через год и теперь понимаю)И 3-х лет не прошло.

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

    норм все работает

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

    Все ок. А якщо додати кнопки < > то це на них треба вішати клік і рух слайдів?

    • @DemetriusPablo
      @DemetriusPablo 8 місяців тому

      переводчика нету? чертила

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

    спасиб

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

    А что за редактор?

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

      visual studio code

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

      @@HitHodROOM Спасибо

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

      VisualStudio Code, VSC

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

    Проблему с многократным нажатием решил по другому. Этот вариант *гораздо* хуже. Я просто видео не досмотрел и решил эту задачку до продолжения просмотра. Может кому-то интересно будет.
    left = () => {
    let slides2 = document.querySelectorAll('.slide-single'),
    offset2 = 0;
    if (slides2.length == 2) {
    for (let i = 0; i < slides2.length; i++) {
    slides2[i].style.left = offset2 * 512 - 512 + "px";
    offset2++;
    }
    setTimeout(() => {
    slides2[0].remove();
    draw();
    }, 1000)
    } else {
    for(let i = slides2.length; i > 2; i--){
    slides2[i-1].remove();
    }
    left();
    }
    }
    Всего хорошего :)

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

      Спасибо огромное. Код перестал сбоить)

  • @ArtLvl-y1o
    @ArtLvl-y1o Рік тому

    Сколько лет верстаю сайты, а все так же не могу понять JS. Уже и Python и C++ знаю на уровне Senior, а вот JS какой-то не логичный

  • @ГенаФес-ъ9з
    @ГенаФес-ъ9з 4 роки тому

    super

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

    КОММЕНТИРУЮ

  • @СергейСергей-к8я3г
    @СергейСергей-к8я3г 5 років тому

    Алекса дайте ваш вк или скайп пожалуйста мне нужна помощь по корзине нужен диалог

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

      Luschenko@gmail.com

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

    sypeer

  • @НиколайМясоедов-й1б

    Сложно.

  • @ArtLvl-y1o
    @ArtLvl-y1o Рік тому

    Вообще не понятно😄

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

    капец, неужели это НАСТОЛЬКО ценный код, что его нельзя было расшарить? Боитесь за свой гитхаб - так сделайте пример в песочнице и выложите, в чем проблема? Без листинга тяжело разобраться