在Android 4.0.4中无法在Flexbox Modal中的MediaElement播放器上看到控件

时间:2013-05-13 19:14:17

标签: javascript android fancybox mediaelement.js

我在Fancybox模式中创建的媒体元素播放器有问题。这特定于运行4.0.4的Android设备。

在所有iOS设备上,新的Android操作系统,Chrome,Firefox和IE下至7,当我在flexbox模式中创建新的MediaElement播放器时,我能够查看控件并与之交互。

但是当我在4.0.4上创建它时,控件被隐藏了,但是如果我正确猜测它们在哪里,我可以点击它们。但我无法点击视频本身,这使得播放变得困难。而隐藏的控制显然是一个问题。

mediaelementjs_settings  =  {

                    loop    :  mej_loop,
                    pluginPath  :  options.plugin_path,
                    iPadUseNativeControls: options.mobile_native_controls,
                    iPhoneUseNativeControls: options.mobile_native_controls,
                    AndroidUseNativeControls: false,
                    alwaysShowControls: false,
                    error       :  function (mediaElement, domObject) {
                        $('<p class="' + options.component_type + '_error_message">' + options.error_msg + '</p>').insertAfter($(mediaElement).parent().parent().parent());
                        options.component_el.trigger(component_error, options);
                    },
                    success      :  function( mediaElement, domObject ) {
                        var meEl = mediaElement;
                        options.component_el.trigger(component_initialized, options);
                        if(mej_auto_start) {
                            // autostart requires a short timeout to work on several video formats. 100ms
                            // is hardly noticeable so we do it for everything for consistency 
                            window.setTimeout(function() {
                                mediaElement.play();
                            }, 100);
                        }
                    },
                    pauseOtherPlayers: false
                };


new MediaElementPlayer($(this).find('video:first'), mediaelementjs_settings);

我玩过z-index和其他css修复,但目前我很难过。有任何想法吗。

1 个答案:

答案 0 :(得分:0)

我认为这是一个问题,Fancybox的叠加层在某种程度上掩盖了控件。解决方案是将叠加的位置设置为绝对而不是固定。这可能会影响Fancybox的工作方式,因此插入视频的脚本会添加和删除应用相应样式的类。