jPlayer全屏而里面IFRAME?(jPlayer fullscreen while insid

2019-07-29 09:55发布

可以jPlayer的全屏进行工作的内部,而IFRAME标签? 由于是,“全屏幕”是由iframe的大小限制。

编辑:

以下是我在插入jPlayer IFRAME

<div id="movieContainer" >
  <object id="videoTut" name="videoTut" type="text/html" data="/videotutorial/videotut.html">
  </object>
</div>

videotut.html包含一个包含jPlayer,如果加载独立工作的完整的HTML页面。 和object的代码使用像代码改性document.getElementById('movieContainer').innerHTML = '...

另请参阅: https://groups.google.com/forum/#!topic/jplayer/IQxIIYhtAnE

(PS如果你想帮助我出去多个视频设计jPlayer,请在这里: jPlayer多视频演示代码? )

Answer 1:

把这个iframe中

<iframe /* your iframe code */ webkitAllowFullScreen="true" mozallowfullscreen="true" allowFullScreen="true"></iframe>

在js文件添加此

$("a.jp-full-screen").on('click', function() {
    var docm, rqst;

    docm = document.documentElement;
    rqst = docm.requestFullScreen || docm.webkitRequestFullScreen || docm.mozRequestFullScreen || docm.msRequestFullScreen;

    if(typeof rqst!="undefined" && rqst){
        rqst.call(docm);
    }
});
$("a.jp-restore-screen").on('click', function() {
    var docm, rqst;

    docm = document;
    rqst = docm.cancelFullScreen|| docm.webkitCancelFullScreen || docm.mozCancelFullScreen || docm.msCancelFullScreen || docm.exitFullscreen;
    if(typeof rqst!="undefined" && rqst){
        rqst.call(docm);
    }
});

我不知道这是否与闪存解决方案



Answer 2:

那么,在iframe不能超过分配给它的尺寸更大。 这是根本。 所以,除非在iframe本身占用了屏幕的高度和宽度的100%,则没有,我不相信你可以在“全屏”大小播放影片。 同样,你不能在一个大小比分配给它的尺寸更大的发挥的对象。 如果你有在整个画面上的控制,那么你就可以动态调整iframe的高度和宽度,以及它所包含的对象 - 当谈到时间来启动或关闭媒体。 看着它,虽然,因为这可以是一个滑坡。 您可能会发现浏览器之间不一致的行为,并可能要花费一些时间排除故障特定浏览器的布局问题。

所有这一切说...如果jPlayer使用Flash来播放影片,而不是HTML5,你可以在“的allowFullScreen”属性添加到iframe中,而应该让电影的iframe大小外面玩。 但Flash是jPlayer回退,所以你要看到,如果你可以指定格式,否则你可能只是想利用swfobject.js加载Flash影片,而不是使用jPlayer。 再次,有可能会是不一致与浏览器,所以你要争取时间使这一点。



Answer 3:

对我来说,下面的代码工作

$(".jp-full-screen").on('click', function () {
        var docm, rqst;

        docm = document;
        rqst = docm.requestFullScreen || docm.webkitRequestFullScreen || docm.mozRequestFullScreen || docm.msRequestFullScreen;

        if (typeof rqst != "undefined" && rqst) {
            rqst.call(docm);
        }
    });

当我们点击全屏激活按钮和禁用按钮再次点击

<button class="jp-full-screen" role="button" tabindex="0">full screen</button>

确保webkitAllowFullScreen mozallowfullscreen的allowFullScreen是在iframe中添加。



Answer 4:

我看着jplayer的API ,它似乎可以设置jplayer的大小来一个iframe页面内甚至全屏

他们的文档的解释了如何使用集原图选项在iframe页面加载你了。

下面是设置选项原图链接显示的选项,其中3 2 默认值的兴趣在这里所示:

width
    String : (Default: [Video:"100%"] [Audio:"0px"]) : The width as a CSS rule.
height
    String : (Default: [Video:"100%"] [Audio:"0px"]) : The height as a CSS rule.

要查看设置该选项的一个活生生的例子很容易由于他们的jPlayer发展测试该上页 。

下面是尝试一下的说明:

1.点击链接标题的解决方案: "html, flash"在页面顶部。
2.向下滚动到行标题的第一项setMedia(A:{m4v})并点击。
3.最后,通过向下滚动到标题灰色突出设置的全屏大小sizeFull和设置为360p

现在点击下面的创建jplayer ! 然后在播放过程中,点击全屏按钮将增加jplayer最大尺寸的360p的定义。

为了您的iframe页面的要求, 最大尺寸将不会是默认设置,因为这是在iframe容器的100%。

相反,使用JavaScript来指定客户端的屏幕宽度和高度尺寸的大小,从而使得它在全屏的iframe页面之外。 例:

screen.height;
screen.width;

可以肯定,对视频的宽度和高度的值可以是百分比示出或像素。 再下面是包裹在引号是作为串中所示的上述例子。

[Video: "'" + screen.height + "px" + "'"]
[Video: "'" + screen.width + "px" + "'"]

如果iframe是不在同一个域上面可能无法正常工作,但我看这不是你的问题。



文章来源: jPlayer fullscreen while inside IFRAME?