Jquery - обнаружение воспроизведения по тегу объекта Youtube - PullRequest
0 голосов
/ 29 апреля 2018

Я использую тег object для встраивания видео на YouTube.

<object data="http://www.youtube.com/embed/QwievZ1Tx-8" width="100%" height="315"></object>

Я хотел бы инициировать запрос Ajax (чтобы сервер мог обновлять счетчик просмотров базы данных на видео) при каждом воспроизведении видео.

Кто-нибудь знает, как это сделать?

ПРИМЕЧАНИЕ: Допустим, пользователь нажимает «play» на видео, AJAX REQUEST CALLED. Но когда они приостанавливают и возобновляют видео, AJAX REQUEST НЕ ВЫЗЫВАЕТСЯ.

Ответы [ 2 ]

0 голосов
/ 29 апреля 2018

Вы можете использовать YouTube iframe api и обратный вызов onPlayerStateChange, который вызывает объект event, который имеет точный тип события для него. Кроме того, сохраняйте флажок, если видео уже запущено, и вызывайте ajax, только если это не так.

Как это:

var isStarted = false;
function onPlayerStateChange(event) {
  if (event.data == 1 && !isStarted) {
    // call ajax
    isStarted = true;
  }
}
0 голосов
/ 29 апреля 2018

Вы можете сделать это в сценарии:

$("object")[0].onplay = function () {
    //AJAX REQUEST CALLED
};

OR

<object... onplay="myFunction()">

и в сценарии

myFunction(){
//AJAX REQUEST CALLED
}

Это происходит только тогда, когда видео начинает воспроизводиться ...

...