Невозможно установить свойство onaddtrack неопределенной ошибки - PullRequest
0 голосов
/ 11 июля 2020

Я изучаю HTML СМИ. Вот пример обнаружения добавления дорожек:

const mediaElem = document.querySelector("video");
mediaElem.audioTracks.onaddtrack = function(event) {
    audioTrackAdded(event.track);
}

Мой HTML код следующий:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Multimedia</title>
</head>

<body>

    <video controls loop muted poster="images/poster.png"
        width="400" height="400">
        <source src="videos/rabbit320.webm" type="video/webm">
        <source src="videos/rabbit320.mp4" type="video/mp4">
        <p>
            Your browser doesn't support HTML5 audio. Here is a <a href="audio/viper.mp3">link to the audio</a> instead.
        </p>
    </video>

    <script src="scripts/script.js"></script>
</body>

</html>

И код JS ( скрипт. js ):

var videoElem = document.querySelector('video');
videoElem.audioTracks.onaddtrack = function (event) {
    console.log(event.track);
};

В консоли я получаю эту ошибку:

Uncaught TypeError: не удается установить свойство onaddtrack для undefined в скрипте. js: 2

Что я делаю не так?

1 Ответ

0 голосов
/ 11 июля 2020

Свойство HTMLMediaElement.audioTracks все еще находится за флагом, как описано здесь https://caniuse.com/#feat = audiotracks

Таблица совместимости на MDN, вероятно, неправильно показывает эту функцию как поддерживается в Opera.

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