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">&nbsp;class</span>
=<span class="string">"media"</span>
<span class="aname">&nbsp;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使用详解的更多相关文章

  1. Jquery 分页插件 Jquery Pagination

    Jquery 分页插件 Jquery Pagination 分页插件来说,我觉得适用就行,尽量简单然后能够根据不同的应用场景能够换肤.展现形式等. 对于初学者想写分页插件的同学,也可以看下源码,代码也 ...

  2. jQuery滚动条插件 – jquery.slimscroll.js

    jquery.slimscroll.js插件是一个支持把内容放在一个盒子里面,固定一个高度,超出的则使用滚动.jquery.slimscroll.js不仅可以定义高度.宽度,还可以定义位置.滚动条大小 ...

  3. JQuery动画animate的stop方法使用详解

    JQuery动画animate的stop方法使用详解 animate语法: 复制代码 代码如下: $(selector).animate(styles,speed,easing,callback) 复 ...

  4. jQuery分页插件(jquery.page.js)的使用

    效果描述: 不用分页即可显示的jQuery插件 jQuery分页插件——jQuery.page.js用法很简单,效果很棒   1.前端   首先html的head中引入相关css与js <lin ...

  5. 前端html、CSS快速编写代码插件-Emmet使用方法技巧详解

    前端html.CSS快速编写代码插件-Emmet使用方法技巧详解   Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来 ...

  6. 提高Java代码质量的Eclipse插件之Checkstyle的使用详解

    提高Java代码质量的Eclipse插件之Checkstyle的使用详解 CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具.它能够自动化代 ...

  7. Elasticsearch之sense插件安装之后的浏览详解

    前提博客是 Elasticsearch之sense插件的安装(图文详解) 立马,可以看到 http://192.168.80.145:5601/app/sense 以后更新

  8. js插件---videojs中文文档详解

    js插件---videojs中文文档详解 一.总结 一句话总结: js插件网上都有很多参考资料,使用起来也非常简单 二.lavarel中使用实例 <video id="example_ ...

  9. 使用jQuery的插件jquery.corner.js来实现圆角效果-详解

    jquery.corner.js可以实现各种块级元素的角效果,以下为演示,详见jquery_corner.html中的注释部分,并附百度盘下载 jquery_corner.html代码如下: < ...

随机推荐

  1. java mybatis XML文件中大于号小于号转义

    因为这个是xml文件不允许出现类似“>”这样的字符 用了转义字符把>和<替换掉,然后就没有问题了. <=   相当于 <= >=  相当于 >= XML转义字 ...

  2. springmvc+spring+mybatis分页查询实例版本3,添加条件检索

    在第二个版本上添加了姓名模糊查询,年龄区间查询;自以为easy,结果发现mybatis的各种参数写法基本搞混或是忘了,zuo啊,直接上代码,然后赶紧把mybatis整理一遍再研究自己的项目,应该还会有 ...

  3. 夺命雷公狗---DEDECMS----26dedecms面包屑导航的实现

    我们在很多项目里面都会用到面包屑导航,而dedecms里面也是给我们封装好面包屑导航的了,如下图所示: 在dede里面实现面包屑导航主要用到{dede:field.position/}标签,我们首先来 ...

  4. backend flow

    在PD之后,netlist中会多出很多DCAP元件(去耦电容,减少IR-Drop)或者filter cell(保证芯片均匀度要求) 还有一些antenna cell也就是一些diode用来泻流,防止天 ...

  5. LDA-math-认识Beta/Dirichlet分布

    http://cos.name/2013/01/lda-math-beta-dirichlet/#more-6953 2. 认识Beta/Dirichlet分布2.1 魔鬼的游戏—认识Beta 分布 ...

  6. ThinkPHP讲解(一)框架基础

    ThinkPHP框架知识点过于杂乱,接下来将以问题的形势讲解tp(ThinkPHP的简写) 1.tp框架是什么,为什么使用是它? 一堆代码的集合,里边有变量.函数.类.常量,里边也有许多设计模式MVC ...

  7. 四则运算GUI版本

    要求:用户界面新增支持 Windows GUI,同时保留原有命令行下所有功能.提示: 先测试驱动开发,然后重构代码,以GUI为目标修改"核心"函数,把与GUI/Console相关的 ...

  8. 【pyQuery分析论坛】精英乒乓论坛

    In [25]: t= h('table') In [26]: In [26]: t('.mainbox').text() Out[26]: u'\u72b6\u6001 \u4e3b\u9898 \ ...

  9. 关于陈冰、陈良乔以及《我的第一本C++书》【转】

    出处:如何在淘宝上卖出 600 本自己写的 C++ 入门书? 陈冰:<我的第一本C++书> 策划编辑,现为图灵公司副总编,<C程序设计伴侣>策划编辑 陈良乔:<我的第一本 ...

  10. IIS、Asp.net 编译时的临时文件路径(转载)

    IIS上部署的ASP.NET站点都会在一个.Net Framework的特定目录下生成临时编译文件增加ASP.NET站点的访问性能,有时候需要手动去删除这些临时编译文件,特别是发布新版本代码到IIS后 ...