HTML 5 Video OnEnded Событие не запускается - PullRequest
6 голосов
/ 28 мая 2010

Я пытаюсь отреагировать на событие HTML 5 onended для тега video, но безуспешно. В приведенном ниже фрагменте кода я добавил событие mouseleave, чтобы убедиться, что код jQuery правильный, и это событие активирует поле alert().

Видео воспроизводится просто отлично, но я не получаю событие onended (мой alert() не срабатывает).

Тестирование в Chrome, обновлено сегодня до версии 5.0.375.55.

<html>
<head>
<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script>
$(document).ready(function(){
  $("#myVideoTag").bind('mouseleave onended', function(){
        alert("All done, function!");
  });
});

</script>
</head>
<body>
<video id="myVideoTag" width="640" height="360" poster="Fractal-zoom-1-04-Snowflake.jpg" controls>
    <source src="Fractal-zoom-1-04-Snowflake.mp4" type="video/mp4"></source>
    <source src="Fractal-zoom-1-04-Snowflake.ogg" type="video/ogg"></source>
</video>

<body>
<html>

Ответы [ 2 ]

17 голосов
/ 02 июня 2010

Убедитесь, что вы привязываетесь к событию ended вместо onended, всегда пропускайте on при связывании с jQuery, например, вы не можете сделать .on("onclick"), вы бы сделали .on("click").

Если это поможет, здесь есть полный список доступных событий для элемента <video>: http://www.w3.org/2010/05/video/mediaevents.html

2 голосов
/ 17 сентября 2011

Я тоже искал ответ для этого.Вот что сработало для меня в мобильной среде jQuery:

$(document).ready(function(){
  $("#idname").bind('ended', function(){
  $.mobile.changePage($('#idofpageyouwantogoto'), 'fade');
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...