Событие webkitfullscreenchange не запускается, когда элемент содержит Flash - PullRequest
1 голос
/ 17 ноября 2011

У меня есть элемент, который содержит видеопроигрыватель: этот видеопроигрыватель может быть на основе Flash или HTML5. Я хочу иметь возможность сделать этот элемент полноэкранным (я знаю, в данный момент он работает только в webkit) и запускать некоторые сценарии изменения размера, когда это происходит.

Вот как я это делаю:

this.getEl('.fullscreen').bind('click', $.proxy(function() {
    this.getEl('#tpPlayer')[0].webkitRequestFullScreen();
}, this));

И слушатель события:

this.getEl('#tpPlayer').bind('webkitfullscreenchange', function() {
    console.log('fullscreen change');
    $(this).toggleClass('tpPlayer tpPlayerFullScreen');
});

Когда #tpPlayer содержит элемент <video>, все работает нормально: элемент переходит в полноэкранный режим, событие запускается, сообщение регистрируется и классы переключаются. Однако, когда #tpPlayer содержит Flash <object>, элемент работает в полноэкранном режиме, но событие не запускается (поэтому обратный вызов также не запускается).

Почему это происходит и как этого избежать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...