JQuery多媒体插件jQuery Media Plugin使用详解
malsup jquery media plugin
该插件可以播放多种类型的多媒体文件包括:Flash, Quicktime, Windows Media Player, Real Player, MP3, Silverlight, PDF等。
前提条件是客户端浏览器中装有相应的插件。
该插件主要是将<a>标签转化为<div>,同时生成适合不同类型多媒体文件播放的<Object>对象,起到解析翻译的过程,从而达到多媒体播放的效果。转化过程是在客户端浏览器中实现,所以打开网页到出现播放器之间存在 时间差。
jQuery Media Plugin的主页地址:主页地址
在他的主页demo中已经很详细的讲解了JQuery Media插件的使用
首先是引入相应的js文件
<script type="text/javascript" src="jquery-1.6.min.js"></script>
<script type="text/javascript" src="jquery.media.js"></script>
添加页面加载完毕后需要执行的js代码
<script type="text/javascript">
$(function() {
$('a.media').media();
});
</script>
最后添加<a>标签
FLV<a class="media {width:250, height:250}" href="mediaplayer.swf?file=1.flv"></a>
SWF<a class="media {width:250, height:200}" href="2.swf"></a>
WMA<a class="media {width:480, height:425}" href="3.wma"></a>
WMV<a class="media {width:480, height:425}" href="4.wmv"></a>
AVI<a class="media {width:300, height:300}" href="5.avi"></a>
RM<a class="media {width:300, height:300}" href="6.rm"></a>
<code class="mix"><span class="tag">PDF<a</span>
<span class="aname"> class</span>
=<span class="string">"media"</span>
<span class="aname"> href</span>
=<span class="string">"guice.pdf"</span>
<span class="tag"></span>
<span class="tag"></a></span>
</code>
在浏览器中打开该文件后就能够看到效果,使用火狐浏览器打开源代码生成的内容如下
FLV<div class="media {width:250, height:250}" style="background-color: rgb(255, 255, 255); width: 250px;"><object width="250" height="250" data="mediaplayer.swf?file=1.flv" type="application/x-shockwave-flash"><param value="mediaplayer.swf?file=1.flv" name="src"><param value="#ffffff" name="bgColor"><param value="transparent" name="wmode"><param value="false" name="autoplay"><param value="" name="flashvars"><div><p><strong>需要安装插件或缺少播放器</strong></p><p>请安装Flash插件</p><p><a href="http://www.adobe.com/go/getflashplayer">点击下载</a></p></div></object></div>
SWF<div class="media {width:250, height:200}" style="background-color: rgb(255, 255, 255); width: 250px;"><object width="250" height="200" data="2.swf" type="application/x-shockwave-flash"><param value="2.swf" name="src"><param value="#ffffff" name="bgColor"><param value="transparent" name="wmode"><param value="false" name="autoplay"><param value="" name="flashvars"><div><p><strong>需要安装插件或缺少播放器</strong></p><p>请安装Flash插件</p><p><a href="http://www.adobe.com/go/getflashplayer">点击下载</a></p></div></object></div>
在IE8下生成的代码如下(以flv为例):
FLV
<DIV style="BACKGROUND-COLOR: #ffffff; WIDTH: 250px" class="media {width:250, height:250}" jQuery1606780127202784689="1">
<OBJECT codeBase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7" classid=clsid:d27cdb6e-ae6d-11cf-96b8-444553540000 width=250 height=250 type=application/x-oleobject>
<PARAM NAME="_cx" VALUE="6614">
<PARAM NAME="_cy" VALUE="6614">
<PARAM NAME="FlashVars" VALUE="">
<PARAM NAME="Movie" VALUE="mediaplayer.swf?file=1.flv">
<PARAM NAME="Src" VALUE="mediaplayer.swf?file=1.flv">
<PARAM NAME="WMode" VALUE="Transparent">
<PARAM NAME="Play" VALUE="0">
<PARAM NAME="Loop" VALUE="-1">
<PARAM NAME="Quality" VALUE="High">
<PARAM NAME="SAlign" VALUE="LT">
<PARAM NAME="Menu" VALUE="-1">
<PARAM NAME="Base" VALUE="">
<PARAM NAME="AllowScriptAccess" VALUE="">
<PARAM NAME="Scale" VALUE="NoScale">
<PARAM NAME="DeviceFont" VALUE="0">
<PARAM NAME="EmbedMovie" VALUE="0">
<PARAM NAME="BGColor" VALUE="FFFFFF">
<PARAM NAME="SWRemote" VALUE="">
<PARAM NAME="MovieData" VALUE="">
<PARAM NAME="SeamlessTabbing" VALUE="1">
<PARAM NAME="Profile" VALUE="0">
<PARAM NAME="ProfileAddress" VALUE="">
<PARAM NAME="ProfilePort" VALUE="0">
<PARAM NAME="AllowNetworking" VALUE="all">
<PARAM NAME="AllowFullScreen" VALUE="false">
<PARAM NAME="AllowFullScreenInteractive" VALUE="">
</OBJECT>
</DIV>
这里需要注意flv格式的文件 ,该类型的显示需要指定swf文件(mediaplayer.swf),若该swf文件与需要播放的flv文件不在同一个目录下(往往都不在同一目录下)或<a>标签中文件引入有路径时,需要注意flv文件的路径,jquery media转化时默认flv文件的目录是在swf目录下,所以flv路径需要处理。可能有其他办法解决,也可能通过修改js文件来解决该问题。
示例:
FLV<a class="media {width:250, height:250}" href="video_files/mediaplayer.swf?file=../video_files/1.flv"></a>
当客户端浏览器未安装相应的插件时,jquery media插件给出了相应的提示信息。
默认信息为:
xxx插件/播放器 Required
xxx插件/播放器 is required to view this media. Download Here.
可以通过修改jquery.media.js文件中该部分文字或样式来完善提示的信息。
具体位置在文件的463行 附近
提示信息修改时需要注意jquery.media.js文件的文件编码需要与html页面一致,否则中文乱码
不知道是我这边客户端的问题还是该插件与浏览器兼容存在问题,当我未安装realplay时,在IE8下RM文件未提示该部分内容,且显示也存在问题,在FF下能够正常显示
JQuery多媒体插件jQuery Media Plugin使用详解的更多相关文章
- Jquery 分页插件 Jquery Pagination
Jquery 分页插件 Jquery Pagination 分页插件来说,我觉得适用就行,尽量简单然后能够根据不同的应用场景能够换肤.展现形式等. 对于初学者想写分页插件的同学,也可以看下源码,代码也 ...
- jQuery滚动条插件 – jquery.slimscroll.js
jquery.slimscroll.js插件是一个支持把内容放在一个盒子里面,固定一个高度,超出的则使用滚动.jquery.slimscroll.js不仅可以定义高度.宽度,还可以定义位置.滚动条大小 ...
- JQuery动画animate的stop方法使用详解
JQuery动画animate的stop方法使用详解 animate语法: 复制代码 代码如下: $(selector).animate(styles,speed,easing,callback) 复 ...
- jQuery分页插件(jquery.page.js)的使用
效果描述: 不用分页即可显示的jQuery插件 jQuery分页插件——jQuery.page.js用法很简单,效果很棒 1.前端 首先html的head中引入相关css与js <lin ...
- 前端html、CSS快速编写代码插件-Emmet使用方法技巧详解
前端html.CSS快速编写代码插件-Emmet使用方法技巧详解 Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来 ...
- 提高Java代码质量的Eclipse插件之Checkstyle的使用详解
提高Java代码质量的Eclipse插件之Checkstyle的使用详解 CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具.它能够自动化代 ...
- Elasticsearch之sense插件安装之后的浏览详解
前提博客是 Elasticsearch之sense插件的安装(图文详解) 立马,可以看到 http://192.168.80.145:5601/app/sense 以后更新
- js插件---videojs中文文档详解
js插件---videojs中文文档详解 一.总结 一句话总结: js插件网上都有很多参考资料,使用起来也非常简单 二.lavarel中使用实例 <video id="example_ ...
- 使用jQuery的插件jquery.corner.js来实现圆角效果-详解
jquery.corner.js可以实现各种块级元素的角效果,以下为演示,详见jquery_corner.html中的注释部分,并附百度盘下载 jquery_corner.html代码如下: < ...
随机推荐
- paper 92:Lena与图像处理
如果你是个数字图像处理技术的研究人员,或这方面的工程师, 想必对这位戴有羽状帽饰的美女不会感觉陌生.我第一次在国际知名的学术性刊物上见到这位美女时,不禁叹为天人,毕竟在这样严肃的学术期刊上,还从未出现 ...
- oracle表分区
注:新建分区表前要先准备好要用的表空间 一. oracle分区类型: 范围分区(Range分区) 列表分区(List分区) 散列分区(Hash分区) 组合分区(Composite Partitioni ...
- css3颜色渐变
从上到下的线性渐变: #grad { background: -webkit-linear-gradient(red, blue); /* Safari 5.1 - 6.0 */ backgrou ...
- input放在a标签里面不能选择input里面的文本,IE9点击失效
input放在a标签里面不能选择input里面的文本,IE9点击失效 在IE浏览器中<input type="text" value="test" /&g ...
- Java相关内容解析
java中的反射机制是什么,有什么作用啊?要点:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的以及动态调 ...
- android 中通过代码创建控件
package bvb.de.openadbwireless.circle; import android.annotation.TargetApi; import android.app.Activ ...
- 虚拟机 本地 本机 双启动 运行 vhd local Dual Boot
在使用虚拟机的过程中, 可能会遇到虚拟机的运行要求过高, 电脑力不从心的情况. 为了让虚拟机使用更多电脑资源, 可以让虚拟机以本地双系统的方式,访问本地计算机资源. 打开磁盘管理,在磁盘上右键,选择 ...
- 在CentOS之上搭建VMware Player 7
1.下载VMware-Player-7.1.2安装包 百度网盘下载地址: 链接:http://pan.baidu.com/s/1nudfo6H 密码:oemc 直接下载地址: https://down ...
- Quartz集群原理及配置应用
1.Quartz任务调度的基本实现原理 Quartz是OpenSymphony开源组织在任务调度领域的一个开源项目,完全基于Java实现.作为一个优秀的开源调度框架,Quartz具有以下特点: (1) ...
- PHP array_column() 函数
定义和用法 array_column() 返回输入数组中某个单一列的值. array_column(array,column_key,index_key); 参数 描述 array 必需.规定要使用的 ...