Делаем аудиоплеер HTML / SCSS / JS.

  Рет қаралды 27,149

Давай Попробуем: JavaScript

Давай Попробуем: JavaScript

Күн бұрын

🏆 Поднять мотивацию и получить плюшки(сборка, исходники, чат со мной):
🔹 Patreon: / roman_timoshchuk
🔹 Buy me a coffee: www.buymeacoffee.com/tymoshchuk
🔹 Crypto:
👉 USDT(ERC20): 0xA4008910De17DB20c7505425316fF72d4C5Eed96
👉 USDT(BEP20): 0x4350c4E1C0bB35634C7fDE1cFB278BE0606E3822
👉 Binance Pay: 432902886
⏱️ Тайм-коды: ⏱️
00:00 Обзор приложения
00:45 Обзор стартового шаблона
01:24 Разбираем макет
02:20 Делаем HTML верстку
04:30 Пишем стили на препроцессоре SCSS
09:15 Переходим к JS, получаем DOM элементы
12:56 Загрузка песни
19:29 Play, Pause функции
28:22 Функция "следующая песня"
31:10 Функция "предыдущая песня"
32:45 Реализуем прогрессбар и промотку песни
42:50 Клянчу фидбек о моих видео
📨 Сотрудничество ► timoschuk.roman@gmail.com
📨 Business inquiries ► timoschuk.roman@gmail.com

Пікірлер: 157
@lets_try_js
@lets_try_js 3 жыл бұрын
Ребят, накидайте фидбека )
@yunkidze
@yunkidze 2 жыл бұрын
Спасибо большое, а как сделать отключение звука на айфоне, при отключения звука аппаратной кнопкой?)
@user-lj3fk5to2g
@user-lj3fk5to2g 2 жыл бұрын
Спасибо! Все понятно с первого раза!
@lets_try_js
@lets_try_js 2 жыл бұрын
@@user-lj3fk5to2g рад стараться)
@wizartable
@wizartable 2 жыл бұрын
За урок спасибо, но представь что ты в самом начале пути обучения(ты бомж-студент из общаги, который ест хлеб с мазиком и огурцами, ходит везде пешком) У тебя нет денег на патреон. Представил? Ок, выложи ссылку на макет. Графику с аудио на гугл диск для таких людей тоже выложи плз, если не сложно. А то хочется учиться и повторить урок, но...
@lets_try_js
@lets_try_js 2 жыл бұрын
@@wizartable у меня не осталось исходников
@cult2839
@cult2839 Жыл бұрын
Вот это контент! Супер спасибо, получилось в своем проектике по аналогии реализовать работу плеера, очень хорошее объяснение! И еще было бы интересно посмотреть на добавление возможности регулировать громкость.
@user-ys5kt7fr4y
@user-ys5kt7fr4y Жыл бұрын
это лучшее, что я нашел по запросу "как сделать аудиоплеер". порезал на кусочки, пережевал все 100 раз, в рот положил. респект за твой труд
@lets_try_js
@lets_try_js Жыл бұрын
спасибо)
@jik856
@jik856 2 жыл бұрын
Сложно было найти подобный контент на русском, спасибо за старания, ты молодец!
@lets_try_js
@lets_try_js 2 жыл бұрын
благодарю)
@jik856
@jik856 2 жыл бұрын
@@lets_try_js единственная проблема в том, что у меня duration возвращает почему-то Infinity, не совсем понимаю почему...
@user-ul9ls7ox1t
@user-ul9ls7ox1t 3 жыл бұрын
Благодарю за ваш труд. Очень нравится как объясняете. На таких вот практических задачах, и учишься.
@lets_try_js
@lets_try_js 3 жыл бұрын
Благодарю )
@asmix7328
@asmix7328 2 жыл бұрын
Огонь! Спасибо за урок! Все понятно и доступно для начинающего) Попробовал повторить...всё получилось)
@lets_try_js
@lets_try_js 2 жыл бұрын
рад помочь )
@user-dz6jr3vu9x
@user-dz6jr3vu9x Жыл бұрын
Если удалось повторить. Значит наверное и понять. Можете тогда подсказать как после объявления массива через переменную songs далее используется song?
@user-eg1qk2zi4v
@user-eg1qk2zi4v 2 жыл бұрын
Спасибо тебе огромное) Доносишь информацию максимально просто и понятно
@lets_try_js
@lets_try_js 2 жыл бұрын
Благодарю ))
@markchumakov2169
@markchumakov2169 Жыл бұрын
Спасибо вам большое за этот урок. Помимо того как делать плеер, узнал много интересных вещей!)
@skdev2062
@skdev2062 8 ай бұрын
Большое спасибо за урок! Желаю успехов! :)
@user-yj3lf2nl6w
@user-yj3lf2nl6w 2 жыл бұрын
Все отлично! первое нормальное видео с объяснением кода за сегодня) Продолжай в том же духе
@lets_try_js
@lets_try_js 2 жыл бұрын
Спасибо )
@user-yj3lf2nl6w
@user-yj3lf2nl6w 2 жыл бұрын
@@lets_try_js единственное у меня не работает ${song} пришлось сделать + song +'mp3'
@lets_try_js
@lets_try_js 2 жыл бұрын
@@user-yj3lf2nl6w главное что в итоге все получилось)
@sheix8
@sheix8 3 жыл бұрын
Спасибо за видео! По поводу подачи материала все хорошо. Отличный микрофон, приятный голос, культурная речь. К сожалению, не могу оценить насколько всё хорошо объясняется, так как совсем новичок, но подача очень хорошая.
@lets_try_js
@lets_try_js 3 жыл бұрын
Спасибо! Ну, все мы когда-то были новичками. Успехов в обучении! )
@markosvager1063
@markosvager1063 Жыл бұрын
Большое спасибо за это замечательное видео. Вы объяснили нам много хороших вещей - мне понравилось. Все найкраще.
@ingazhelnova4798
@ingazhelnova4798 Жыл бұрын
Отличный урок! Большое спасибо!!!
@GEO-le5ft
@GEO-le5ft 2 жыл бұрын
Урок зашел. Продолжай в том же ключе ))
@m1000melochey
@m1000melochey Жыл бұрын
Спасибо за урок. Я только начала свой путь в IT, много не знаю. Очень долго искала подобный урок. Все отлично разжевано. Действительно еще сюда добавить кнопку звука и цены бы не было.
@just__did__it
@just__did__it 2 жыл бұрын
Офигенный урок, спасибо
@user-ts8ek3oz8h
@user-ts8ek3oz8h 2 жыл бұрын
Продолжай так же бро, видосы просто топовые!!!
@tabrisel
@tabrisel 8 ай бұрын
Спасибо большое за подробный урок!) Еще и с тайм-кодами. Автор умничка :)
@lets_try_js
@lets_try_js 8 ай бұрын
благодарю)
@user-hq3em8iy9c
@user-hq3em8iy9c 2 жыл бұрын
Большое спасибо. Смотрела на перемотке. Хочется все быстрее))) видос классный и полезный. Жаль не сразу попался мне. Успехов!
@lets_try_js
@lets_try_js 2 жыл бұрын
спасибо)
@dvdonov
@dvdonov Жыл бұрын
Спасибо за видео! Очень доступно объясняете
@user-yf5ip7td2y
@user-yf5ip7td2y 3 жыл бұрын
Круто , искал такой контент . Спасибо за видео!
@lets_try_js
@lets_try_js 3 жыл бұрын
спасибо) раз помочь )
@user-sv4zd2hf8r
@user-sv4zd2hf8r 2 жыл бұрын
это очень крутой урок, спасибо ОГРОМНОЕ!
@arsttws2667
@arsttws2667 Жыл бұрын
все отлично, продолжай в том же духе
@user-pt2uz5st7i
@user-pt2uz5st7i Жыл бұрын
очень круто и легко объяснил, спасибо
@apsolution4722
@apsolution4722 2 жыл бұрын
Круто, контент на высоте) Спасибо
@lets_try_js
@lets_try_js 2 жыл бұрын
благодарю)
@No..Name.
@No..Name. Жыл бұрын
О, круто, сейчас попробую сделать плеер по видео
@user-rx1ih7nv7r
@user-rx1ih7nv7r 3 жыл бұрын
Круто 🔥🔥🔥, обязательно попробую сделать, спасибо большое!
@lets_try_js
@lets_try_js 3 жыл бұрын
успехов тебе) у тебя все получится)
@aliakseipliutsinski2890
@aliakseipliutsinski2890 8 ай бұрын
Дай бог вам здоровья за такой крутой ролик ❤
@lets_try_js
@lets_try_js 8 ай бұрын
благодарю)
@user-xq9zt4os5h
@user-xq9zt4os5h 2 жыл бұрын
Большое спасибо за отличную работу!!! Мне было очень полезно твое видео! Было бы круто, если бы было открыто параллельно два экрана сразу(html документ и js), так проще ориентироваться к чему обращаешься в процессе )))
@lets_try_js
@lets_try_js 2 жыл бұрын
я никак не привыкну к таком формату, когда два окна ))
@user-cb7vw5jr1f
@user-cb7vw5jr1f 2 жыл бұрын
Спасибо за видео, очень все понятно и круто!
@lets_try_js
@lets_try_js 2 жыл бұрын
спасибо за отзыв )
@user-ze6um7qg4c
@user-ze6um7qg4c Жыл бұрын
Спасибо огромное, Ваша работа конечно шикарно выглядит, вроде визуал обычный, но макет круто сделано и сама реалищация очень доступная, у меня было полегче требование, вы очень помогли, спасибо!!!
@lets_try_js
@lets_try_js Жыл бұрын
рад оказаться полезным)
@sony1939
@sony1939 8 ай бұрын
Cпасибо! супер понятно работает!
@user-ts8ek3oz8h
@user-ts8ek3oz8h 2 жыл бұрын
Ты лучший! Спасибо большое мужик!!!
@jekagabrusevich6831
@jekagabrusevich6831 2 жыл бұрын
Спасибо, крутой урок
@user-kd4yc5jl9w
@user-kd4yc5jl9w 2 жыл бұрын
сделано, хорошо. мне как новичку было приятно слушать. без воды, по пунктам, чётко и понятно, каждый шаг осмыслен и объяснён. не нужно было останавливать видео чтобы понять что конкретно ты сделал. продолжай в том же духе. единственное что я не понял немного как ты работаешь с классами внутри css но это скорее отсутствие части фундаментальных знаний, чем твоя недоработка. буду рад новым видео!
@lets_try_js
@lets_try_js 2 жыл бұрын
Спасибо за такой расширенный фидбек)
@user-kd4yc5jl9w
@user-kd4yc5jl9w 2 жыл бұрын
@@lets_try_js а есть у вас репозиторий с этим уроком? есть вопросы, хотел бы сравнить код UPD. пересмотрел ещё раз и понял, что у нас с вами некоторые нюансы различаются касательно определения классов в css. но не страшно за 2 часа нашёл как вырулить) ещё раз спасибо, всё получилось
@lets_try_js
@lets_try_js 2 жыл бұрын
@@user-kd4yc5jl9w есть архив напиши мне в личку, в инсте (ссылка в шапке канала), скину )
@user-dz6jr3vu9x
@user-dz6jr3vu9x Жыл бұрын
Да действительно хитро вложенные классы получаются... Как это работает?
@user-tn5ez4ei3m
@user-tn5ez4ei3m 8 ай бұрын
Спасибо, дружище, очень понятно и доступно!!! Для начинающих этот видос просто бомба!!!!
@lets_try_js
@lets_try_js 8 ай бұрын
благодарю)
@user-bk8yh8be3c
@user-bk8yh8be3c 2 жыл бұрын
Все очень доходчиво!!! Супер просто!!!!
@lets_try_js
@lets_try_js 2 жыл бұрын
рад помочь)
@user-rq4qh8uv2k
@user-rq4qh8uv2k 2 жыл бұрын
Спасибо огромное, очень помогло в работе
@lets_try_js
@lets_try_js 2 жыл бұрын
рад помочь)
@user-vj3gp1nm8x
@user-vj3gp1nm8x Жыл бұрын
спасибо! отличная работа = спасибо!
@youtubestar3495
@youtubestar3495 2 жыл бұрын
Искал, нашел!!! Спасибо за тутор!!!
@lets_try_js
@lets_try_js 2 жыл бұрын
рад помочь)
@ariionariion7191
@ariionariion7191 Жыл бұрын
Ты очень хорош. Долго искал как сделать свой плеер у меня есть макет каторый я хотел сверстать там кнш все подругому но ты с кайфом обянил и я сделал этот макет теперь он чуть денамичней и деше прияно все четко все красиво продолжай
@WinchesterD
@WinchesterD Жыл бұрын
Спасибо за туториал, оказалось то что мне нужно. Жаль только не реализовывал таймер показывающий время песни в минутах и секундах а также изменение громкости при помощи ползунка.
@m1akarov442
@m1akarov442 2 жыл бұрын
О вас еще мало знают, но как узнают ..... Вы уже не будете успевать нам отвечать =) Этого мы вам и желаем ! Контент лучше многих "блоггеров" программистов . Вы проффесионал !
@liveforever1424
@liveforever1424 2 жыл бұрын
Жеско мужик!
@user-nv7su8re9y
@user-nv7su8re9y Жыл бұрын
Я тебя люблю, ты мне жизнь спас❤❤❤❤❤
@baidassuiunbaev7762
@baidassuiunbaev7762 Жыл бұрын
ЛУЧШИЙ!
@user-iy3mm1jz8r
@user-iy3mm1jz8r Жыл бұрын
Все круто
@artemkamyshenkov3492
@artemkamyshenkov3492 Жыл бұрын
Спасибо большое)
@lets_try_js
@lets_try_js Жыл бұрын
рад помочь)
@user-yf3yt6hp3e
@user-yf3yt6hp3e 2 жыл бұрын
Спасибо тебе за видео, я добавил кнопку полноэкранного режима, мут, перемотка на 10 сек вперед и назад, при нажатии на пробел останавливать и воспроихводить видео, а чтобы сделать кнопку с настройков качества видео, надо библиотеку специальную?
@user-em2zl1lp3z
@user-em2zl1lp3z 3 жыл бұрын
Спасибо за контент 👍 давай ещё вёрстку со своей супер крутой сборкой
@lets_try_js
@lets_try_js 3 жыл бұрын
есть в планах такой видос, но еще не знаю что выбрать верста сложного макета с крутыми анимациями или что по - проще)
@read_and_listen
@read_and_listen 3 жыл бұрын
@@lets_try_js первый вариант)
@user-em2zl1lp3z
@user-em2zl1lp3z 3 жыл бұрын
@@lets_try_js конечно сложного 🤘🏻
@user-kg6fz5tz2b
@user-kg6fz5tz2b 3 жыл бұрын
Спасибо! Только недавно случайно увидел канал! Хорошо, что подписался! Лайк, колокол нажал!)
@lets_try_js
@lets_try_js 3 жыл бұрын
воу))) спасибо тебе !))
@user-hd1mo2uo1p
@user-hd1mo2uo1p Жыл бұрын
Спасибо
@o-w1871
@o-w1871 2 жыл бұрын
лайк, подписка, комент! Двигаем контент
@thestrelchik
@thestrelchik 2 жыл бұрын
ты босс :*
@user-px6ui9wk1f
@user-px6ui9wk1f Жыл бұрын
Спасибо больше за контент! Искал видео на примере которого смогу поработать с аудио файлами. Решил улучшить немного плеер добавив визуализации звука прямо над прогресс-баром: const canvas = document.querySelector('#canvas1'); const ctx = canvas.getContext('2d'); let audioSource, analyser; function preporation() { const audioContext = new AudioContext(); if (!audioSource) { // Проверка на присутствие источника аудио analyser = audioContext.createAnalyser(); audioSource = audioContext.createMediaElementSource(audio); audioSource.connect(analyser); analyser.connect(audioContext.destination); } analyser.fftSize = 128; // Настройка количества "столбиков" в анимации const bufferLength = analyser.frequencyBinCount; const dataArray = new Uint8Array(bufferLength); const barWidth = canvas.width/bufferLength; let barHeight; let x; function animate() { x = 0; ctx.clearRect(0, 0, canvas.width, canvas.height); analyser.getByteFrequencyData(dataArray); drawVisualiser(bufferLength, x, barWidth, barHeight, dataArray); requestAnimationFrame(animate); } animate(); } function drawVisualiser(bufferLength, x, barWidth, barHeight, dataArray) { for (let i = 0; i < bufferLength; i++) { barHeight = dataArray[i] / 2.5; // Настройка высоты анимации const red = i * barHeight/10; const green = i * 4; const blue = barHeight/6; ctx.fillStyle = 'rgb(' + red + ',' + green + ',' + blue + ')'; // Настройка цвета ctx.fillRect(x, canvas.height - barHeight, barWidth, barHeight); x += barWidth; } } За основу взято иностранное видео. Кому интересно вот ссылка: kzbin.info/www/bejne/jIm6p5mootWUpqs&ab_channel=Frankslaboratory Чтобы все заработало, необходимо добавить сам канвас в html разметку, как-то так: Удачи всем кто постигает JS в эти трудные времена и еще раз спасибо за потрясающие видео!
@lets_try_js
@lets_try_js Жыл бұрын
Вау, круто 👍 Если сам ютуб не удалит этот коммент(не любит ссылок в комментах) то я его оставлю, думаю людям будет весьма полезно)
@user-kh4vh9dr1i
@user-kh4vh9dr1i Жыл бұрын
привет спасибо большое выручил
@user-kh4vh9dr1i
@user-kh4vh9dr1i Жыл бұрын
а как добавить регулятор громкости ?
@Kain4ra
@Kain4ra Жыл бұрын
Отличное видео. Подскажите, пожалуйста, делаю всё как на видео, но прогресс двигается то ровно, то зависает и потом перескакивает. С чем это может быть связано?
@olehPagulych
@olehPagulych 2 жыл бұрын
Дякую)
@lets_try_js
@lets_try_js 2 жыл бұрын
рад помочь)
@David-gm7qz
@David-gm7qz 3 жыл бұрын
здравствуйте, хороший урок , хотел спросить какая программа использовалась для создания макета?
@lets_try_js
@lets_try_js 3 жыл бұрын
здравствуйте) я работаю в Figma для отрисовки дизайна)
@156Winter
@156Winter Жыл бұрын
Спасибо за урок, сначало у меня не получалось, убил 2 дня чтоб понять и только на второй понял что я ставил ' а должно было быть `.
@vadimniziev5489
@vadimniziev5489 3 жыл бұрын
Привет! Подскажи пожалуйста, какой у тебя шрифт используется ? очень приятен для глаз, хочу себе тоже такой сделать)) Ролик топ)
@lets_try_js
@lets_try_js 3 жыл бұрын
шрифт в редакторе. ? если да, то он называется JetBrains Mono
@deanwichester6412
@deanwichester6412 6 ай бұрын
Шикарный урок.,когда трек заканчивается сделал так ,но вроде тоже работает function updateProgress(e) { let currentTime = audio.currentTime const duration = audio.duration const start_progress = currentTime / (duration / 100) progress.style.width =`${start_progress}%` if (start_progress == 100) { nextSong() } }
@user-nm5my5tk1r
@user-nm5my5tk1r Жыл бұрын
Что за программу для написания кода используешь?
@sandstorm7786
@sandstorm7786 2 жыл бұрын
Есть видео твоих настроек и плагинов VS Code ? мне понравилась анимация мерцающей линии и шрифт
@lets_try_js
@lets_try_js 2 жыл бұрын
есть видео на эту тему на канале
@ikatsulaia7468
@ikatsulaia7468 2 жыл бұрын
спасибо за отличную работу!!! контент на высоте, все понятно и круто!
@user-dz6jr3vu9x
@user-dz6jr3vu9x Жыл бұрын
Не улавливаю откуда взялось имя song, если массив присвоен переменной songs?
@user-dz6jr3vu9x
@user-dz6jr3vu9x Жыл бұрын
Далее в loadSong(song) Откуда он берëтся?
@siverianserpent5559
@siverianserpent5559 2 жыл бұрын
Молодец, очень полезное видео, пожелания: 1. Жаль что не вывел рядом время - какая секунда играет от общей длительности трека. 2. Когда делаешь математические операции деления общей длительности и т.д. - пожалуйста, объясняй логику своей мысли ,чтобы людям ещё доступнее было. Все остальное 5+
@lets_try_js
@lets_try_js 2 жыл бұрын
спасибо за фидбек ) Это одно из первых видео, еще не совсем понимал как правильно ))
@siverianserpent5559
@siverianserpent5559 2 жыл бұрын
@@lets_try_js для начала - очень качественно
@lets_try_js
@lets_try_js 2 жыл бұрын
@@siverianserpent5559 благодарю)
@jfoxbe
@jfoxbe Жыл бұрын
Отличный урок. Ещё не плохо было б сделать возможность проматывать песню не кликами а зажатием ползунка.
@olgapedashenko3930
@olgapedashenko3930 8 ай бұрын
Золотой человек! Спасибо огромное! Видео очень помогло, и объясняешь все отлично🤗
@lets_try_js
@lets_try_js 8 ай бұрын
благодарю))
@TheDaemonL
@TheDaemonL 2 жыл бұрын
добрый день. как реализовать несколько таких плейеров на странице? полагаю из-за querySelector работает только первый из них
@lets_try_js
@lets_try_js 2 жыл бұрын
как вариант, принимать аргумент класса в эту функцию и в тот querySelector передавать этот же аргумент, и когда вызываете эту функцию, то в нее как аргумент передаете класс того блока, куда встроить плеер) я уже точно не помню код, но есть вероятность что там придется такую манипуляцию проделать не только для плеера, но и для остальных элементов наверное ничего не понятно с моей подсказки)))
@TheDaemonL
@TheDaemonL 2 жыл бұрын
вопрос снят, все сделал
@TheDaemonL
@TheDaemonL 2 жыл бұрын
@@lets_try_js сделал в jquery по событию клика в одну свою функцию передал все Ваши и раскидался там все переменные по this. по итогу плеер по которому кликнул ссылается только на элементы внутри него
@lets_try_js
@lets_try_js 2 жыл бұрын
@@TheDaemonL ну я предложил лишь один из вариантов) знаете, что одну и ту же задачу можно решить кучей способов)
@user-wb9lt4mq6p
@user-wb9lt4mq6p Жыл бұрын
Спасибо за видео! А как сделать так, чтобы плеер запоминал на каком этапе воспроизведение закончилось и предлагал бы продолжить, уже после перезагрузки страницы? Как в ютубе)
@lets_try_js
@lets_try_js Жыл бұрын
нужно куда-то сохранять данные) это должна быть либо база данных, либо хотя-бы localstorage
@user-wb9lt4mq6p
@user-wb9lt4mq6p Жыл бұрын
@@lets_try_js Спасибо!😊
@awenn2015
@awenn2015 2 жыл бұрын
Обновление будет , ползунок громкости ?)
@user-oc5zg6mq7l
@user-oc5zg6mq7l Жыл бұрын
Где такие иконки можно скачать ?
@user-mt9lq4hl1c
@user-mt9lq4hl1c Жыл бұрын
Замечательный урок, но ссылки но код не работают. Можно их обновить?
@Sha-Kate
@Sha-Kate 2 жыл бұрын
Огромное спасибо!!! просто суперпонятно! Все глаза сегодня проглядела в поисках такого хорошего примера! Вот еще бы вопрос со звуковым прогрессом раскрыть в таком плеере и вообще супер-пупер!!!
@lets_try_js
@lets_try_js 2 жыл бұрын
можете написать мне в инсте(ссылочка есть в шапке канала) я дам ссылочку, где можно посмотреть код плеера, в котором есть регулятор громкости) там все просто, я вряд ли буду дополнять этим материалом)
@Sha-Kate
@Sha-Kate 2 жыл бұрын
@@lets_try_js Спасибо огромное, я по этому примеру сделала сама тегом progress! Спасибо!
@lets_try_js
@lets_try_js 2 жыл бұрын
@@Sha-Kate круто! успехов в обучении)
@user-dd2zp9hv3r
@user-dd2zp9hv3r 2 жыл бұрын
Все классно, спасибо. Только 2 часа убил на точно не указал ‘e' при перемотке. Ты его поставил в функции как аргумент но сказал об этом, как бы строчку ниже написал, а потом между делом указал аргумент. А так все здорово спасибо.
@chatabbk
@chatabbk 3 жыл бұрын
Очень все классно. но есть вопрос как реализовать что бы список песен выводить из MSQL + php Плиз не могу ни как найти. Помоги
@lets_try_js
@lets_try_js 3 жыл бұрын
спасибо что посмотрел ролик, но с этим вопросом, увы, я тебе вряд ли помогу. так как у меня крайне негативное отношение к php и я попросту не знаю, как это сделать
@chatabbk
@chatabbk 3 жыл бұрын
@@lets_try_js Я его тоже начинаю ненавидеть...
@lets_try_js
@lets_try_js 3 жыл бұрын
​@@chatabbk я не призываю не учить php если что)) это дело вкуса))
@VINIPON
@VINIPON 2 ай бұрын
Помогити спатити, у меня не работает прогрес бар, вроде всё хорошо но "correntTime" не хочет находится, пишет "undefined" а код я кажется правильно писал - function updateProgress(e) { const {duration, correntTime} = e.srcElement console.log(duration) console.log(correntTime) } всё как бы отлично но всё равно не работает, музыка всё работает, только это не хочет работать
@user-rt1zx9ik7y
@user-rt1zx9ik7y 2 жыл бұрын
audio.play в консоли выдает ошибку вот такого типа: uncaught in promise domexception the element has no supported sources
@tricky_pie
@tricky_pie Жыл бұрын
Аналогичная ошибка. Так и не смогла найти решение.
@tricky_pie
@tricky_pie Жыл бұрын
Решилась проблема, была ошибка в пути. Нужно было указать одну точку для выхода на папку выше, я поставила 2 как vs code подсказывал)) Вывод: вс код обманщик, а самой стоит быть внимательнее :)
@anarchist1918
@anarchist1918 2 жыл бұрын
Можно пожалуйста ссылку на ассеты?
@lets_try_js
@lets_try_js 2 жыл бұрын
Напишите мне в инсте, я на днях буду у пк и попробую найти
@m1akarov442
@m1akarov442 2 жыл бұрын
А макет ? =) Можете скинуть ?
@lets_try_js
@lets_try_js 2 жыл бұрын
в инсту напишите мне, в шапке сайта есть, я дам ссылку
@4Aziwzjdfgnk29y
@4Aziwzjdfgnk29y 2 жыл бұрын
исходник заблочен ..печаль беда
@awenn2015
@awenn2015 2 жыл бұрын
Странная штука, когда уже немного делаешь только на react привыкаешь и уже как то не привычно смотреть на чистый js
@efferusmode
@efferusmode 2 жыл бұрын
как сделать полоску громкости ?
@user-yf3yt6hp3e
@user-yf3yt6hp3e 2 жыл бұрын
Так же через input range, поищи просто как менять звук и привяжи к инпуту
@efferusmode
@efferusmode 2 жыл бұрын
@@user-yf3yt6hp3e всё получилось, спасибо
@user-fb7qo8td4f
@user-fb7qo8td4f Жыл бұрын
Вообще я предлагаю функцию второго клика которую придумал(может кто-то ещё придумал не знаю...) Вот функция: let i = 1 this.onclick = () => { i+=1 if(i%2==0){ Функция первого клика... }else{ Функция второго клика } Функция очень надёжная лично мне помогла, вы также можете химичить и сделать так чтобы после первого клика ничего не происходило... }
How To Make A Music Player Using HTML CSS And JavaScript
29:46
GreatStack
Рет қаралды 191 М.
Создание АУДИО ПЛЕЕРА c нуля ⮞ HTML, SCSS, JAVASCRIPT
1:19:21
Tomkovich - Frontend Development
Рет қаралды 7 М.
Don't eat centipede 🪱😂
00:19
Nadir Sailov
Рет қаралды 22 МЛН
FOOTBALL WITH PLAY BUTTONS ▶️ #roadto100m
00:29
Celine Dept
Рет қаралды 59 МЛН
How To Make Toggle Button Using HTML & CSS
5:27
MakeTechStuff
Рет қаралды 61 М.
Создаем свое ANDROID приложение на PYTHON
13:55
Чёрный Треугольник
Рет қаралды 196 М.
Контекст вызова функции. Фундаментальный JavaScript
21:51
Михаил Непомнящий
Рет қаралды 20 М.