Я хочу создать кнопку, которая будет загружать музыкальный файл с компьютера пользователя в div, используя только HTML, css и JavaScript. Это возможно?

У меня, очевидно, есть еще код, но я просто хочу понять, что я должен делать, так что я не буду вставлять его весь.

  <!doctype html>

<html lang = "en">
<head>
  <meta charset = "utf-8">

  <title>PlayBackingTracks</title>
  
  

  

</head>

<body>
  

   

</body>
</html>

вы хотите, чтобы пользователь щелкнул кнопку, чтобы инициализировать окно браузера, чтобы они могли загружать свою собственную музыку, или вы хотите, чтобы ваша программа сама просматривала файлы пользователей?

Daniel Martinez 11.12.2020 03:46
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
1
90
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы не предоставили много возможностей для работы в своем примере, но я создал фрагмент, который может помочь.

Запустите фрагмент ниже:

//declare elements as vars
var audioUpload = document.getElementById("file");
var audioLink = document.getElementById('audioLink');
var audioSource = document.getElementById("audioSource");
var audioControl = document.getElementById('audio');

//attach event listener to audioUpload input
audioUpload.addEventListener("change", function() {
  uploadAudio(this);
});

//function that will upload audio
function uploadAudio(input) {
  var reader;
  if (input.files && input.files[0]) {
    reader = new FileReader();
    reader.onload = function(e) {
      audioLink.setAttribute('data-value', e.target.result);
      audioLink.innerHTML = "Click to play"
    }
    reader.readAsDataURL(input.files[0]);
  }
}

//function that will play audio after clicking link
function play(element) {
  audioSource.src = element.getAttribute('data-value');
  audioControl.load();
  audioControl.play();
};
<p>Upload your audio file:</p>
<input type = "file" id = "file">
<br/><br/>
<div>
  <a id = "audioLink" href = "#" onclick = "play(this)" data-value = ""></a>
</div>
<br/><br/>
<audio controls = "controls" id = "audio">
  <source id = "audioSource" src = ""></source>
</audio>

Другие вопросы по теме