jQuery多媒体插件jQuery Media Plugin使用详解


Posted in Javascript onDecember 19, 2014

jQuery Media Plugin是一款基于jQuery的网页媒体播放器插件,它支持大部分的网络多媒体播放器和多媒体格式,比如:Flash, Windows Media Player, Real Player, Quicktime, MP3,Silverlight, PDF。它根据当前的脚本配置,自动将a标签替换成div,并生成object, embed甚至是iframe代码,至于生成object还是embed,jQuery Media会根据当前平台自动判别,因此兼容性方面非常出色。下面这段代码是jQuery Media生成后的结果:

 <div class="media"> 

    <object width="450" height="250" attr1="attrValue1" attr2="attrValue2"

        codebase="http://www.apple.com/qtactivex/qtplugin.cab"

        classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"> 

        <param name="src"      value="myBetterMovie.mov"> 

        <param name="autoplay" value="true"> 

        <param name="param1"   value="paramValue1"> 

        <param name="param2"   value="paramValue2"> 

        <embed width="450" height="250" src="myBetterMovie.mov" autoplay="true"

            attr1="attrValue1" attr2="attrValue2" param1="paramValue1" param2="paramValue2"

            pluginspage="http://www.apple.com/quicktime/download/" > </embed> 

    </object> 

</div>

具体使用方法

html标记代码

<a class="media" href="sample.mov">My Quicktime Movie</a>

<a class="media" href="sample.swf">My Flash Movie</a>

<a class="media" href="sample.wma">My Audio File</a>

初始化脚本:

$('.media').media();

选项

可以通过脚本对象或者jQuery Metadata Plugin来配置参数。

全局默认值:

$.fn.media.defaults = {

preferMeta: 1, // 如果为true, 则标记的meta值优先于脚本对象

autoplay: 0, // 标准化的跨播放器设置

bgColor: '#ffffff', // 背景颜色

params: {}, // 作为param元素添加到object标记中;作为属性添加到embed标记中

attrs: {}, // 作为属性添加到object以及embed中

flashvars: {}, // 作为flashvars参数或属性添加到flash中

flashVersion: '7', // 需要的最低flash版本

// 默认的flash视频和mp3播放器 // @see: http://jeroenwijering.com/?item=Flash_Media_Player

flvPlayer: 'mediaplayer.swf',

mp3Player: 'mediaplayer.swf',

// Silverlight选项 // @see http://msdn2.microsoft.com/en-us/library/bb412401.aspx

silverlight: {

  inplaceInstallPrompt: 'true', // 在适当的位置显示安装提示

  isWindowless: 'true', // 无窗口模式

  framerate: '24', // 最大帧速率

  version: '0.9', // Silverlight版本 onError: null, // onError回调函数

  onLoad: null, // onLoad回调函数

  initParams: null, // 对象初始化参数

  userContext: null // 传到load回调函数的参数

  }

};

我们也可以在执行初始化脚本的时候传入一些option参数进去,如下代码:

$('.media').media( { width: 400, height: 300, autoplay: true } );

再如代码:

$('.media').media({

  width: 450,

  height: 250,

  autoplay: true,

  src: 'myBetterMovie.mov',

  attrs: { attr1: 'attrValue1', attr2: 'attrValue2' }, // object/embed attrs

  params: { param1: 'paramValue1', param2: 'paramValue2' }, // object params/embed attrs

  caption: false // supress caption text

});

'src'选项

src选项指定了媒体文件的地址。它没有全局的默认值。如果未显示指定src选项的值,jQuery Media Plugin将使用href或者src属性的值来代替。

播放器和格式

jQuery Media Plugin默认为播放器和格式如下表所示:

播放器 文件格式
Quicktime aif,aiff,aac,au,bmp,gsm,mov,mid, midi,mpg,mpeg,mp4,m4a,psd,qt,qtif, qif,qti,snd,tif,tiff,wav,3g2,3pg
Flash flv, mp3, swf
Windows Media Player asx, asf, avi, wma, wmv
Real Player ra, ram, rm, rpm, rv, smi, smil
Silverlight xaml
iframe html, pdf

上表说明了,mp3格式被自动对应到了flash播放器。全局配置中的$.fn.media.defaults.mp3Player指定MP3媒体由 mediaplayer.swf文件播放。该swf文件是一个小型的mp3和flash视频播放器,可以从这里下载:http://www.longtailvideo.com/players/jw-flv-player/

SWFObject

这个脚本很常见,用来将Flash内容嵌入到网页中,你不用考虑不同平台的Flash嵌入方式。但这个文件并非必需。如果它加载了,jQuery Media Plugin将使用它,反之jQuery Media Plugin将按自己的默认方式生成object/embed标记。更多信息可以参考:http://code.google.com/p/swfobject/

iframe Player

默认情况下,PDF和HTML格式被映射到了iframe。它们将显示在iframe中而非object/embed标记中。

添加或者修改格式关联

这个操作可以由插件的mapFormat方法实现,如

$.fn.media.mapFormat('mp3','quicktime');
可用的播放器有:uicktime, flash, realplayer, winmedia, silverlight和iframe,确保播放器能够播放关联到它的文件格式。

下载

直接下载jquery.media.js文件,或者在Github上下载历史版本

注意:

此插件会把<a>转化为<div> 从而嵌套多媒体内容。此插件像其它的Jquery插件一样 简单易用。

Javascript 相关文章推荐
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
Oct 15 Javascript
javascript获得服务器端控件的ID的实现代码
Dec 28 Javascript
Ajax搜索结果页面下方的分页按钮的生成
Apr 05 Javascript
jquery如何实现在加载完iframe的内容后再进行操作
Sep 10 Javascript
JavaScript中的索引数组、关联数组和静态数组、动态数组讲解
Nov 08 Javascript
Javascript冒泡排序算法详解
Dec 03 Javascript
JavaScript中的Truthy和Falsy介绍
Jan 01 Javascript
window.open不被拦截的简单实现代码(推荐)
Aug 04 Javascript
Bootstrap基本组件学习笔记之列表组(11)
Dec 07 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
Apr 21 jQuery
Angular 4依赖注入学习教程之ValueProvider的使用(七)
Jun 04 Javascript
微信小程序中页面FOR循环和嵌套循环
Jun 21 Javascript
jquery图片播放浏览插件prettyPhoto使用详解
Dec 19 #Javascript
js中匿名函数的创建与调用方法分析
Dec 19 #Javascript
浅谈Javascript中匀速运动的停止条件
Dec 19 #Javascript
浅谈Javascript如何实现匀速运动
Dec 19 #Javascript
Javascript添加监听与删除监听用法详解
Dec 19 #Javascript
Javascript 实现图片无缝滚动
Dec 19 #Javascript
使用JavaScript获取地址栏参数的方法
Dec 19 #Javascript
You might like
PHP 上传文件大小限制
2009/07/05 PHP
php设计模式 Decorator(装饰模式)
2011/06/26 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
PHP命名空间namespace用法实例分析
2016/09/27 PHP
查找页面中所有类为test的结点的方法
2014/03/28 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
2015/09/04 Javascript
Jquery跨域获得Json的简单实例
2016/05/18 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
jQuery中DOM节点的删除方法总结(超全面)
2017/01/22 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
了解javascript中let和var及const关键字的区别
2019/05/24 Javascript
Python将xml和xsl转换为html的方法
2015/03/10 Python
使用Python编写一个简单的tic-tac-toe游戏的教程
2015/04/16 Python
python中set常用操作汇总
2016/06/30 Python
python构建深度神经网络(续)
2018/03/10 Python
详解python的sorted函数对字典按key排序和按value排序
2018/08/10 Python
django中SMTP发送邮件配置详解
2019/07/19 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Python爬虫实现“盗取”微信好友信息的方法分析
2019/09/16 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
css3 iphone玻璃透明气泡完美实现
2013/03/20 HTML / CSS
html5桌面通知(Web Notifications)实例解析
2014/07/07 HTML / CSS
阿联酋航空官方网站:Emirates
2017/10/17 全球购物
PHP如何与mysql建立链接
2013/05/05 面试题
remote接口和home接口主要作用
2013/05/15 面试题
业务员岗位职责
2013/11/16 职场文书
颁奖典礼主持词
2014/03/25 职场文书
小学教师评语大全
2014/04/23 职场文书
教师考察材料范文
2014/06/03 职场文书
代收款委托书范本
2014/10/01 职场文书
2014乡镇领导班子四风对照检查材料思想汇报
2014/10/05 职场文书
市贸粮局召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
工作检讨书大全
2015/01/26 职场文书
加薪申请报告范本
2015/05/15 职场文书
Spring JPA 增加字段执行异常问题及解决
2022/06/10 Java/Android