文讲一下本人在使用jPlayer插件时的整个过程、出现的BUG已经解决办法。

最近在做bootstrap项目,项目中需要一个响应式、兼容IE7的视频播放插件,经过上网查找,找到了所谓可以兼容到IE6的响应式视频播放插件——jPlayer。注:本代码的功能是打开自动循环播放,如果不需要,可以修改个别属性。

一、下载插件包。

官网下载插件包:点击打开链接,这种网站当然有中文版:点击打开链接 (PS:感觉网站布局有点丑,像高仿网站。但仍挡不住我对它爱的深沉),就现在来看,中文网的版本更新慢于英文网站。打开官网,首页就有一个大大的Download按钮,也可以点击菜单栏里的Download选项进行下载。

二、在html中使用。

下载的插件包中有很多文件,官网给的比较全,还有各种例子,在example文件夹中,你可以看相关代码的效果。

在使用前的注意事项:

这些在官网的“开发文档”栏目有的,建议用前一定要阅读一下它的文档。

建立html文件(头尾这边就省略了),引用jPlayer相关js、css文件(css文件有多种样式可供选择这边随便引用一种):

  1. <span style="white-space:pre">      </span><link href="./dist/skin/pink.flag/css/jplayer.pink.flag.css" rel="stylesheet" type="text/css" />
  2. <span style="white-space:pre">      </span><script type="text/javascript" src="./lib/jquery.min.js"></script>
  3. <span style="white-space:pre">      </span><script type="text/javascript" src="./dist/jplayer/jquery.jplayer.min.js"></script>

开始写html,主要是视频放置位置和一些控制按键(这些代码可以上网搜一下,都有的):

  1. <div id="jp_container_1" class="jp-video jp-video-360p" role="application" aria-label="media player">
  2. <div class="jp-type-single">
  3. <!-- 视频放置位置 -->
  4. <div id="jquery_jplayer_1" class="jp-jplayer"></div>
  5. <!-- 控制按键 -->
  6. <div class="jp-gui">
  7. <!-- 视频中间的play大按钮 -->
  8. <div class="jp-video-play">
  9. <button class="jp-video-play-icon" role="button" tabindex="0">play</button>
  10. </div>
  11. <div class="jp-interface">
  12. <!-- 视频中间的play大按钮 -->
  13. <div class="jp-progress">
  14. <div class="jp-seek-bar">
  15. <div class="jp-play-bar"></div>
  16. </div>
  17. </div>
  18. <!-- 播放时间 -->
  19. <div class="jp-current-time" role="timer" aria-label="time"> </div>
  20. <!-- 剩余时间 -->
  21. <div class="jp-duration" role="timer" aria-label="duration"> </div>
  22. <!-- 文字,显示播放的主题 -->
  23. <div class="jp-details">
  24. <div class="jp-title" aria-label="title"> </div>
  25. </div>
  26. <!-- 控制按键 -->
  27. <div class="jp-controls-holder">
  28. <!-- 声音按键 -->
  29. <div class="jp-volume-controls">
  30. <button class="jp-mute" role="button" tabindex="0">mute</button>
  31. <button class="jp-volume-max" role="button" tabindex="0">max volume</button>
  32. <div class="jp-volume-bar">
  33. <div class="jp-volume-bar-value"></div>
  34. </div>
  35. </div>
  36. <!-- 播放控制 -->
  37. <div class="jp-controls">
  38. <button class="jp-play" role="button" tabindex="0">play</button>
  39. <button class="jp-stop" role="button" tabindex="0">stop</button>
  40. </div>
  41. <!-- 全屏按钮 -->
  42. <div class="jp-toggles">
  43. <button class="jp-repeat" role="button" tabindex="0">repeat</button>
  44. <button class="jp-full-screen" role="button" tabindex="0">full screen</button>
  45. </div>
  46. </div>
  47. </div>
  48. </div>
  49. <!-- 底部附加文字内容 -->
  50. <div class="jp-no-solution">
  51. <span>Update Required</span>
  52. To play the media you will need to either update your browser to a recent version or update your <a href="http://get.adobe.com/flashplayer/" target="_blank">Flash plugin</a>.
  53. </div>
  54. </div>
  55. </div>

剩下的就是JS代码了:

  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. $("#jquery_jplayer_1").jPlayer({
  4. ready: function () {
  5. $(this).jPlayer("setMedia", {
  6. title: "Big Buck Bunny",
  7. m4v: "http://www.jplayer.org/video/m4v/Big_Buck_Bunny_Trailer.m4v",//视频文件
  8. ogv: "http://www.jplayer.org/video/ogv/Big_Buck_Bunny_Trailer.ogv",//视频文件
  9. webmv: "http://www.jplayer.org/video/webm/Big_Buck_Bunny_Trailer.webm",//视频文件
  10. poster: "http://www.jplayer.org/video/poster/Big_Buck_Bunny_Trailer_480x270.png"//视频初始时图片
  11. }).jPlayer("play")//自动播放
  12. },
  13. swfPath: "../js/jPlayer/dist/jplayer/jquery.jplayer.swf",//当不支持html5的时候启用swf flash
  14. supplied: "webmv, ogv, m4v", //包含的文件格式
  15. size: {
  16. width: "640px",
  17. height: "360px",
  18. cssClass: "jp-video-360p"
  19. },
  20. useStateClassSkin: true,
  21. autoBlur: false,
  22. smoothPlayBar: true,
  23. keyEnabled: true,
  24. remainingDuration: true,
  25. toggleDuration: true
  26. }).jPlayer("play").jPlayer("repeat");//自动播放 自动循环
  27. })
  28. </script>

代码完成。

打开网页,查看效果:

底部这些显示样式都是可以更改的,可以引用它自己其余的css样式,也可以自己在css文件中设置。

三、遇到的BUG以及处理:

1.本人引用是在自己的html文件中引用的,文件中还包括其他的代码,当按照上边代码写的时候。报错:

  1. $(...).jPlayer is not a function

即在jQuery中调用jPlayer函数时报错,造成这种BUG的原因有可能是:

  1. 1.没有引用成功jpalyer.js文件或者引用路径有问题;
  2. 2.没有引用jQuery文件或者引用路径有问题;
  3. 3.有可能你在html最后又引用了另一个版本的jquery.js文件,导致不能识别是用哪个jquery

2.当把视频文件换成自己本地的flv文件后,视频无法播放,出现播放区域无的现象,经上网查询得知:

  1. jPlayer在引用本地文件时,直接访问本地的html是无效的,要将html放到服务器上,以IP地址的形式访问才行。

3.至于兼容性问题,不需要手动自己处理,jPlayer官网上已经说明他的兼容问题,经过上边操作,是可以成功在IE7中展示的,如果出现无法展示情况,可能是:

  1. js代码中最后的设置属性后的逗号没有去除

即,根据IE的报错,找到报错那一行或者报错的前一行,最后一个逗号要去掉,这可能是因为IE对jQuery代码要求比较严格,逗号是不允许的。

另外,如果不是这个问题,IE也没有报错,就是展示不出来,那就只有可能是你配置的问题。

完。

jPlayer插件的使用的更多相关文章

  1. The jQuery HTML5 Audio / Video Library (jQuery jPlayer插件给你的站点增加视频和音频功能)

    http://jplayer.org/ The jQuery HTML5 Audio / Video Library jPlayer is the completely free and open s ...

  2. [jPlayer] HTML5 Audio & Video for jQuery

    ---------------------------------------------------------------------------------------------------- ...

  3. [jPlayer]一分钟部署jPlayer

    ---------------------------------------------------------------------------------------------------- ...

  4. jplayer.js 与 video.js

    HTML5 - 两款基于JS的视频播放器 都是基于h5 video 标签,如果不支持则会自动转成flash,这里个人比较推荐使用jplayer; 1.video.js pc端有时候会与视频打交道,如果 ...

  5. WEB视频播放器插件,总结

    WEB视频播放器插件,总结 2018年07月29日 20:42:11 流光忆莲 阅读数:572更多 个人分类: 推荐文章收藏   以下是关于网页中嵌入视频播放插件的各种资料的总结 基于H5的Vedio ...

  6. 视频及MP3 播放浅析 Jplayer参数详细

    初识jplayer插件是因为它的兼容性是最好的,可以兼容到IE6,官网上对它兼容性有很详细的说明 这个是我选择使用它的首要原因. 现在从需求上来了解它的使用方法吧.第一个需求:MP3格式的音频在网页播 ...

  7. Jplayer歌词同步显示插件

    http://blog.csdn.net/wk313753744/article/details/38758317 1.该插件是一个jquery的编写的跟jplayer实现歌词同步的插件,最终效果如图 ...

  8. 一个MP3播放的插件jPlayer

    Jplayer小样   最近应公司要求需要一个MP3播放的插件,网上找了很多插件,看来看去还是jPlayer用着最舒服也最容易扩展.所以就找了个资料研究了下,简单做了个小DEMO.支持实时控制列表,常 ...

  9. JPlayer Jquery video视频插件

    近日一直在搜关于视频的jquery插件,要求功能全,跨平台,百思不得其解,偶尔找到一个插件JPlayer,国产的,很全.为什么选择JPlayer 简单:几分钟就可以上手编码.部署 可定制:可以方便地用 ...

随机推荐

  1. Tensorflow中的变量

    从初识tf开始,变量这个名词就一直都很重要,因为深度模型往往所要获得的就是通过参数和函数对某一或某些具体事物的抽象表达.而那些未知的数据需要通过学习而获得,在学习的过程中它们不断变化着,最终收敛达到较 ...

  2. MySQL保存或更新 saveOrUpdate

    1. 引子 在项目开发过程中,有一些数据在写入时候,若已经存在,则覆盖即可.这样可以防止多次重复写入唯一键冲突报错.下面先给出两个MyBatis配置文件中使用saveOrUpdate的示例 <! ...

  3. webpack2.0学习

    1.进到指定的目录下,新建自己的文件名 mkdir webpack-test 创建你的项目名称或者你己有的项目名称cd webpack-test npm initnpm install webpack ...

  4. Java基础88 数据库设计的三大范式

    数据库的设计原则:建议设计的表尽量遵守三大范式 1.第一范式 要求表的每个字段必须是不可分割的独立单元 Student表:    name       -- 违反了第一范式             张 ...

  5. Heist

    CF#509 div2 A 第一次用自己的号打CF祭. 题目描述 昨晚有一家电子商店被抢劫了. 昨天在商店里的所有键盘都是从x开始按升序编号的.例如,如果x=4,并且商店中有3个键盘,那么编号就为4, ...

  6. 使用nginx统一代理dashboard,grafana,Prometheus二级目录访问

    k8s上的这些管理工具必不可少,可以统一在nginx下的二级目录下. ingress是好,但我们不方便使用内部域名,相信么...:) 一,prometheus改造 在prometheus的deploy ...

  7. nginx用户认证配置( Basic HTTP authentication)及认证原理和实现

    https://blog.csdn.net/guyue35/article/details/53906843

  8. [BZOJ2616]SPOJ PERIODNI 树形dp+组合数+逆元

    2616: SPOJ PERIODNI Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 128  Solved: 48[Submit][Status][ ...

  9. oracle SQL学习总结

    1.候选键.主键和外键约束: create table Employee( id int primary key, name char(20), birthday Date, address varc ...

  10. 使用URLEncoder、URLDecoder进行URL参数的转码与解码

    1. import java.net.URLDecoder; import java.net.URLEncoder; String strTest = "?=abc?中%1&2< ...