Вопрос к знатокам JS
-
Есть скрипт который после того как просмотр видео заканчивается автоматически запускает любую нужную функцию
<script> document.getElementById('my_video_1').addEventListener('ended',handler,false); function handler(e) { alert('Порноролик отыграл!'); } </script>
как сделать чтоб скрипт запустил функцию за 10 секунд до конца видео ?
-
@dilolo said in Вопрос к знатокам JS:
как сделать чтоб скрипт запустил функцию за 10 секунд до конца видео ?
Скорее всего ни как. Текущий скрипт прослушивает событие "ended", который отдаёт элемент с id 'my_video_1', скорее всего это плеер
-
@Fox
Есть другой рабочий скрипт который работает просто не смог его прикрутить к своему плееру на video js<html> <body> <video id="vid" width="320" height="240" controls> <source src="1.mp4" type="video/mp4"> <source src="movie.ogg" type="video/ogg"> Your browser does not support the video tag. </video> <script> var callOnce = true; function monitorVideo() { if ((vid.duration - vid.currentTime) < 5) if (callOnce) { myFunction(); callOnce = false; } } function myFunction() { alert('5 seconds'); } setInterval(monitorVideo, 100); </script> </body> </html>
-
Мой плеер
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <title>CodePen - OGZ Video.js Skin</title> <link rel='stylesheet' href='https://vjs.zencdn.net/5-unsafe/video-js.css'><link rel="stylesheet" href="./style.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script> </head> <body> <div id="instructions"> <video id="my_video_1" class="video-js vjs-default-skin" width="640px" height="267px" controls preload="none" poster='http://video-js.zencoder.com/oceans-clip.jpg' data-setup='{ "aspectRatio":"640:267", "playbackRates": [0.5, 0.75, 1, 1.25, 1.5, 1.75, 2] }'> <source src="1.mp4" type='video/mp4' /> <source src="https://vjs.zencdn.net/v/oceans.webm" type='video/webm' /> </video> <!-- partial --> <script src='//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> <script src='https://vjs.zencdn.net/5-unsafe/video.js'></script><script src="./script.js"></script> <script> document.getElementById('my_video_1').addEventListener('ended',handler,false); function handler(e) { alert('Порноролик отыграл!'); } </script> </body> </html>
-
@dilolo Какое то специфичное порно https://vjs.zencdn.net/v/oceans.webm, для эстетов видимо
:D
Смотрите, в функции выше у плеера с id "vid" есть два свойства "duration" и "currentTime", если в вашем плеере есть эти свойства, то их можно использовать для определения текущего времени воспроизведения (и сколько осталось до конца)
-
@Fox Спасибо большое. Я тоже подумал что проблема в duration. наверно у плеера он по другому )
-
@dilolo said in Вопрос к знатокам JS:
@Fox Спасибо большое. Я тоже подумал что проблема в duration. наверно у плеера он по другому )
Вы выведите в консоли id плеера (в вашем примере это будет
my_video_1
), в открывшихся свойствах смотрите какие методы в нём есть