Javascript основной медиаплеер

0

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

<html>
<head>
<script type='text/javascript'>
    function defAudio() {
        var def = playRandom();
        var format = '.mp3';
        var title = '&quot;+def+format+&quot;';
        document.getElementById('media').src=&quot;+def+format+&quot;;
        document.getElementById('test').innerHTML=title+'has been selected';
    }
    function playRandom() {
        var mp3 = dBase();
        for (var i = 0; i < mp3.length; i++) {
            var selVal = mp3[Math.floor(Math.random() * i)];
            var gen = mp3[selVal];
            return gen;
        }
    }   
    function dBase() {
        var songs = array();
        songs[0] = 'A Prophecy';
        songs[1] = 'The Final Episode';
        songs[2] = 'When Everyday is the Weekend';
        return songs;
    }

    /*function select() {}*/
</script>
</head>
<body onload='defAudio()'>
<p id='iface'>
<audio controls>
    <source id='media' src='' type='audio/mpeg'>
    Unexpected Error!
</audio>
</p>
</body>
</html>

РЕДАКТИРОВАТЬ

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

  • 0
    Something isn't working. ? Довольно смутное описание проблемы.
  • 0
    Я случайно удалил абзац с идентификатором "test", когда разместил здесь, так что это не должно иметь значения. Также мы планируем использовать базу данных для песен, но временно я просто создал функцию dBase. У меня один друг работает над базой данных, другой - над графикой, и я занимаюсь этим.
Показать ещё 3 комментария
Теги:
mp3

1 ответ

0

В этом коде вы вызываете defAudio() когда тело загружается, и что, вероятно, до того, как <audio> еще не загружен. Это может быть одна проблема.

Я также видел, что в этом коде

var title= '&quot;+def+format+&quot;';

Вы включили все в строку, как между кавычками. Таким образом, все это будет рассматриваться как строка с точным текстом (без значений переменных), и этот заголовок будет выглядеть как " &quot;+def+format+&quot;

И вы тоже испортили этот другой код

document.getElementById('media').src=&quot;+def+format+&quot;;

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

(Извините за мой синтаксис, я не из англоязычной страны)

  • 0
    Я бы не догадался, что ты не очень хорошо говоришь по-английски. Я вернусь к тебе завтра. Весь этот код только что выйдет из меня сегодня вечером, поэтому я пытаюсь втиснуть его, не задумываясь И в 4 часа ночи друг и спасибо за ваш пост

Ещё вопросы

Сообщество Overcoder
Наверх
Меню