Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Каким методом можно остановить аудиодорожку (https://javascript.ru/forum/events/78641-kakim-metodom-mozhno-ostanovit-audiodorozhku.html)

Scooterok 13.10.2019 14:45

Каким методом можно остановить аудиодорожку
 
Добрый всем.
Собрал из интернета во такой код:
<video id="myVideo" width="320" height="176" controls>
  <source src="mov_bbb.m4a" type="video/mp4">
  <source src="mov_bbb.ogg" type="video/ogg">
  Your browser does not support HTML5 video.
</video>

<script>
var vid = document.getElementById('myVideo');
vid.currentTime = 20; // Seek to 20 seconds
</script>

В данном случае аудио файл начинает проигрываться с 20-ой секунды.
Как указать, например что закончится должно на 30 секунде, когда файл допустим имеет минуту времени?
Т.е. либо задать временные рамки от и до, либо сбрасывать на начало при достижении 30-ой секунды, ну и крайний вариант остановить автоматически дальнейшее проигрывание.
Необходимо дать возможность прослушать лишь часть файла, и не всегда это нужно сначала, почти всегда в основном нужно задавать параметр от которого начинать проигрывать, в прочем как приведено выше этого я добился :)
А вот как остановить дальнейшее прослушивание?
Буду благодарен за помощь!

laimas 13.10.2019 17:49

vid.addEventListener('timeupdate', function() {
    console.log(this.currentTime)
})


https://developer.mozilla.org/ru/doc...s/Media_events

Scooterok 15.10.2019 11:46

На других форумах подсказали, в итоге получился вот такой код, который работает везде, кроме Edge(Internet Explorer):
Я сделал так:

var vid = document.getElementById('myAudio');
var vidin = 15;
var vidout = 20;
vid.currentTime = vidin;
let audio = document.querySelector('#myAudio');
 
audio.addEventListener('timeupdate', function() {
    if (audio.currentTime < vidin)
        audio.currentTime = vidin;
    if (audio.currentTime >= vidout) {
        audio.currentTime = vidout;
        audio.pause();
		vid.currentTime = vidin;
    }
});

Почему в IE не хочет работать?
Вот пример: https://faq.group/test.html

laimas 15.10.2019 12:29

Цитата:

Сообщение от Scooterok
Почему в IE не хочет работать?

Поддержки нет значит.

А не странный ли код по логике или это не одноразовая операция, а как запрет на просмотр всего?

Scooterok 17.10.2019 17:35

Цитата:

Сообщение от laimas
А не странный ли код по логике или это не одноразовая операция, а как запрет на просмотр всего?

Не понял Вашего вопроса :)
Я планирую на одной странице запускать несколько таких кодов с разными myAudio...

Scooterok 17.10.2019 17:37

Цитата:

Сообщение от laimas (Сообщение 513993)
Поддержки нет значит.

Поддержки чего?
Яваскрипты типа alert да и сам плеер в IE работает, не работает логика!

laimas 17.10.2019 18:30

Цитата:

Сообщение от Scooterok
Не понял Вашего вопроса

Например, при открытие видео по запросу производится указанный отрезок, затем остановка и прокрутка в начало. Далее можно просматривать все видео. То есть некая презентация.

Или же разрешено всегда просматривать только этот отрезок, а все видео нельзя, и судя по коду это и нужно?

О поддержке тут - https://developer.mozilla.org/ru/doc...s/Media_events.

Scooterok 17.10.2019 20:39

Цитата:

Сообщение от laimas (Сообщение 514196)
Например, при открытие видео по запросу производится указанный отрезок, затем остановка и прокрутка в начало. Далее можно просматривать все видео. То есть некая презентация.

Или же разрешено всегда просматривать только этот отрезок, а все видео нельзя, и судя по коду это и нужно?

О поддержке тут - https://developer.mozilla.org/ru/doc...s/Media_events.

Именно нужно дать прослушивать только часть определенную, чтоб вручную не делать этого каждый раз.
Залил файл на сервер, прописал параметры от и до и всё...


Часовой пояс GMT +3, время: 14:36.