基于jPlayer三分屏的制作方法

前端之家收集整理的这篇文章主要介绍了基于jPlayer三分屏的制作方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

三分屏

,这里的三分屏只是在一个播放器里同时播放三个视频,但是要求只有一个控制面板同时控制它们,要求它们共享一个时间轨道。这次只是简单的模拟了一下功能,并没有深入的研究。

首先,需要下载jPlayer,jPlayer是一个JavaScript写的完全免费和开源的jQuery多媒体库插件,我觉得他最大的好处就是兼容性,并且页面也简洁大方,个人比较喜欢。jPlayer可到其官网下载最新版本(nofollow" target="_blank" href="http://www.jplayer.cn">http://www.jplayer.cn)。并且官网有开发文档和Demo,所以还是比较容易上手的。

关于简单的视频播放器和音频播放器这里不再赘述了,官网的Demo挺好的,这里直奔主题

首先当然是引入jPlayer相关文件

首先是css文件夹,这里为了方便,某些文件也放到css文件夹里了:

然后是js文件夹:

因为jPlayer是在jQuery的插件,所以jquery的包自然也就少不了了。

新建一个test.jsp页面,下面是代码

JPlayer Test
 <!-- 控制面板 -->
 <!-- width: 959px; margin-left: -320px; -->
 <div id="controller" class="jp-interface" style="border: 1px solid #009be3;"&gt;
  <div class="jp-progress"&gt;
   <div class="jp-seek-bar"&gt;
    <div class="jp-play-bar"&gt;</div>
   </div>
  </div>
  <div class="jp-current-time"&gt;</div>
  <div class="jp-duration"&gt;</div>
  <div class="jp-controls-holder"&gt;
   <div class="jp-controls"&gt;
    <button class="jp-play"&gt;play</button>
    <button class="jp-stop"&gt;stop</button>
   </div>
   <div class="jp-volume-controls"&gt;
    <button class="jp-mute"&gt;mute</button>
    <button class="jp-volume-max"&gt;max volume</button>
    <div class="jp-volume-bar"&gt;
     <div class="jp-volume-bar-value"&gt;</div>
    </div>
   </div>
   <div class="jp-toggles"&gt;
    <button class="jp-full-screen"&gt;full screen</button>
   </div>
  </div>
  <div class="jp-details"&gt;
   <div class="jp-title" aria-label="title"&gt;</div>
  </div>
 </div>
</div>

新建一个test.js文件,下面是代码

$(document).ready(function() {
// 实例化第一个视频
$("#jquery_jplayer_1").jPlayer({
ready: function() {
$(this).jPlayer("setMedia",{
title: "This is video Title",m4v: "http://www.jplayer.org/video/m4v/Big_Buck_Bunny_Trailer.m4v",/ m4v: "video/003.webm",/
poster: "http://www.jplayer.org/video/poster/Big_Buck_Bunny_Trailer_480x270.png"
});
},swfPath: "../../dist/jplayer",supplied: "m4v",size: {
width: "640px",height: "360px",cssClass: "jp-video-360p"
},useStateClassSkin: true,autoBlur: false,smoothPlayBar: true,keyEnabled: true,remainingDuration: true,toggleDuration: true
});

// 实例化第二个视频
$("#jquery_jplayer_2").jPlayer({
ready: function() {
$(this).jPlayer("setMedia",size: {
width: "320px",height: "180px",toggleDuration: true
});

// 实例化第三个视频
$("#jquery_jplayer_3").jPlayer({
ready: function() {
$(this).jPlayer("setMedia",toggleDuration: true
});

// 绑定初始化事件,用于在页面加载的时候初始化控制条的位置
$("#jquery_jplayer_1").bind($.jPlayer.event.ready,function(event) {
$("#controller").css({
width: "959px",margin: "0px 0px 0px -320px"
});
});

// 绑定页面大小变更事件,用于页面大小变化的时候,设置控制条的位置
$("#jquery_jplayer_1").bind($.jPlayer.event.resize,function(event) {
if (!isFull) {
$("#controller").css({
width: "100%",margin: "0"
});
isFull = true;
} else {
$("#controller").css({
width: "959px",margin: "0px 0px 0px -320px"
});
isFull = false;
}
});

// 绑定单击事件,用于单击屏幕控制视频的播放与暂停
$('#jquery_jplayer_1,#jquery_jplayer_2,#jquery_jplayer_3').bind("click",function(){
var $jplayer1 = $('#jquery_jplayer_1');
var $jplayer2 = $('#jquery_jplayer_2');
var $jplayer3 = $('#jquery_jplayer_3');
var status = $jplayer1.data("jPlayer").status;
if (status.paused) {
$jplayer1.jPlayer("play");
$jplayer2.jPlayer("play");
$jplayer3.jPlayer("play");
} else {
$jplayer1.jPlayer("pause");
$jplayer2.jPlayer("pause");
$jplayer3.jPlayer("pause");
}
});
});

// 双击屏幕时,进入全屏状态
function fullScreen() {
$("#jquery_jplayer_1").jPlayer("option","fullScreen",true);
}

以上就是全部信息,需要注意的是,进入全屏状态的时候,只有主屏幕进入全屏,其它两个小的屏幕并不会进入全屏状态。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

原文链接:https://www.f2er.com/js/43327.html

猜你在找的JavaScript相关文章