Flash Fallback Animate при наведении курсора

0

Я пытаюсь оживить флэш-резерв в mediaeelementplayer на mouseenter/mouseover. Я установил размер видео следующим образом:

    $('video').mediaelementplayer({
    plugins: ['flash', 'silverlight'],
    features: ['playpause', 'progress'],
    autoplay: true,
    success: function (mediaElement, domObject, player) {
    if (mediaElement.pluginType == 'flash') {
        mediaElement.addEventListener('canplay', function() {
            mediaElement.play();
            mediaElement.setVideoSize(200, 115);
            player.setMuted(true);
        }, false);
    }

И я хочу, чтобы он оживлял ширину 500 и высоту 250. Я не уверен, как оживить. Это единственная проблема в IE7/8, потому что это единственные браузеры, которые не поддерживают мой HTML5-видео, но они оживляют, и мне нужно, чтобы он выглядел так же, как Chrome, Firefox, Safari и т.д.... Есть ли EventLsitener, который я могу использовать для что?

  • 0
    Итак, вы хотите эффект масштабирования при наведении курсора на видео?
  • 0
    да, у меня он работает в браузерах, которые поддерживают HTML5 Video, но IE7 / IE8 не поддерживают его, поэтому он возвращается к flashmediaelement.swf, и я не могу понять, как его оживить, как в других браузерах. Прямо сейчас я устанавливаю размер видео, но при наведении курсора на видео он остается неизменным, и я хочу, чтобы он начинался с 200x115, а затем при наведении курсора на видео он уменьшается до 500x250.
Показать ещё 4 комментария
Теги:
mediaelement
mediaelement.js

1 ответ

1

Вы могли бы написать что-то в этом направлении:

$('video').on('hover', function() {
    $(this)[0].setVideoSize(500, 250)
}, function() {
    $(this)[0].setVideoSize(200, 115)
});

Или, если вы предпочитаете:

$('video').mouseenter(function() {
    $(this)[0].setVideoSize(500, 250)
}).mouseleave(function() {
    $(this)[0].setVideoSize(200, 115)
});

С таймаутом:

$('video').on("mouseenter", function() {
    clearTimeout($(this).data("close_timeout"));
    $(this)[0].setVideoSize(500, 250);
}).on("mouseleave", function() {
    $(this).data("close_timeout", setTimeout(function() {
        $(this)[0].setVideoSize(200, 115);
    }, 200));
});

однако, я думаю, что можно использовать несколько более чистых решений... посмотрите здесь: Как сделать MediaElement.js Fluid? ,

  • 0
    Это работает, но это слишком быстро. Есть ли способ замедлить это?
  • 0
    $ ('. mejs-inner'). mouseenter (function () {mediaElement.setVideoSize (500, 250)});
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню