Недавно я пишу собственный плеер. Прежде чем писать, мы должны изучить все свойства и методы плеера. Только зная своих врагов и самих себя, мы сможем пройти сотню битв... Позже обсудим. плеер, который мы написали, и некоторые подводные камни, с которыми мы столкнулись. Загрузите его тоже.
Встроенные атрибуты тега видеоДолжно быть еще что-то... но я их еще не использовал. Вы можете проверить документацию MDN.
Свойства и методы видеообъекта1. Статус ошибки
$video.error; //null: обычный $video.error.code //1. Завершение работы пользователя 2. Ошибка сети 3. Ошибка декодирования 4. Неверный URL-адрес;
2. Атрибуты состояния сети (некоторые из них используются чаще)
$video.currentSrc; //Вернем URL текущего ресурса $video.src = value; //Вернем или установим URL текущего ресурса $video.canPlayType(type); //Могут ли быть ресурсы в определенном формате; воспроизведено $video.networkState ; //0. Этот элемент не инициализирован 1. Нормально, но сеть не используется 2. Данные загружаются 3. Ресурс не найден $video.load() //Перезагружаем ресурс, указанный в src $; видео.буферизовано; //Возврат в буферизованную область, $video.buffered.end(0) получает последний момент данных $video.preload; //нет: не загружать метаданные: предварительно загружать информацию о ресурсе auto:
3. Готовое состояние
$video.readyState; //1:HAVE_NOTHING 2:HAVE_METADATA 3.HAVE_CURRENT_DATA 4.HAVE_FUTURE_DATA 5.HAVE_ENOUGH_DATA $video.seeking;
4. Статус воспроизведения (часто используется)
$video.currentTime = value; //Текущая позиция воспроизведения, назначение может изменить позицию $video.duration //Поток текущей длины ресурса возвращает бесконечность $video.paused; //Стоит ли приостанавливать $video.defaultPlaybackRate = value; //По умолчанию Скорость воспроизведения может быть установлена $video.playbackRate = value; //Текущая скорость воспроизведения будет изменена сразу после установки $video.seekable //Возврат в область поиска $video.ended; //Завершить ли; $video.autoPlay; //Проигрывать ли автоматически $video.loop //Зацикливать ли $video.play() //Воспроизведение $video.pause(); //Пауза;
5.Контроль
$video.controls;//Существует ли панель управления по умолчанию $video.volume = value; //Volume $video.muted = value; //Метод события отключения видео (обычно добавляется *) loadstart //Клиент начинает запрашивать data *progress //Клиент запрашивает приостановку данных //Отложенное прерывание загрузки //Клиент активно прекращает загрузку (не вызвано ошибкой), *error //Произошла ошибка при запросе данных, остановка //Скорость сети остановилась * play //play() и триггер автозапуска *пауза при начале воспроизведения //pause() запускает загруженные метаданные //Успешно получает длину ресурса *waiting //Ожидание данных, а не ошибки *playing //Начало воспроизведения canplay //Может воспроизводиться, но может быть приостановлено из-за загрузки в середине *canplaythrough // Может воспроизводиться с поиском // Поиск во время поиска ресурса // Поиск ресурса завершен *timeupdate // Время воспроизведения изменено *завершено // Воспроизведение завершено, скорость изменения // Скорость воспроизведения изменена, длительность изменения // Длина ресурса изменена *volumechange // Громкость изменена
По сути, на основе этого API и атрибутов пишется собственный код плеера, который вам будет удобно проверить позже....
Выше приведено все содержание этой статьи. Я надеюсь, что она будет полезна для изучения всеми. Я также надеюсь, что все поддержат сеть VeVb Wulin.