Получить размер аудиофайла в МБ не работает - через JavaScript / ajax - PullRequest
0 голосов
/ 20 февраля 2020

Я сделал HTML5 плеер, который использует <audio> теги. Все звуковые контроллеры, такие как currentTime, duration, volume, работают отлично.

Однако у меня проблема с отображением размера звука. Аудиофайлы находятся на том же сервере, где находится скрипт php.

Я написал такую ​​функцию:

      $(function() {
        $.ajax('<?php echo $myfile; ?>', {
          type: 'HEAD',
          success: function(d, r, xhr) {
            myfile.innerText = "(" + xhr.getResponseHeader('Content-Length') / Math.pow(1024,2) + " MB)";
          }
        });
      });

Проблема 1 : Размер файла отображается в этот формат (4.98463249206543 MB). Я также попытался добавить toFixed(2), но это не изменилось. Я хочу, чтобы в нем не было десятичных чисел или максимум 2 десятичных знаков.

Задача 2 : приведенный выше размер появляется часто. Но не всегда, иногда, когда я обновляю sh браузер, я получаю размер фрагмента секунды, а затем появляется undefined.

Можно ли как-то исправить эти проблемы? Или сделать это совершенно по-другому? PHP filesize не похоже на работу. Так что я бы придерживался javascript ... или, может быть, nodejs?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...