Query Media Plugin使用方法

来源:互联网 发布:微博有淘宝客软件吗 编辑:程序博客网 时间:2024/05/22 00:46

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生成后的结果:

1
2
3
4
5
6
7
8
9
10
11
12
13
<divclass="media">
    <objectwidth="450"height="250"attr1="attrValue1"attr2="attrValue2"
        codebase="http://www.apple.com/qtactivex/qtplugin.cab"
        classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B">
        <paramname="src"     value="myBetterMovie.mov">
        <paramname="autoplay"value="true">
        <paramname="param1"  value="paramValue1">
        <paramname="param2"  value="paramValue2">
        <embedwidth="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标记代码

1
2
3
<aclass="media"href="sample.mov">My Quicktime Movie</a>
<aclass="media"href="sample.swf">My Flash Movie</a>
<aclass="media"href="sample.wma">My Audio File</a>
初始化脚本:
1
$('.media').media();

选项

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

全局默认值:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$.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选项 // @seehttp://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参数进去,如下代码:
1
$('.media').media( { width: 400, height: 300, autoplay:true } );
再如代码:
1
2
3
4
5
6
7
8
9
$('.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默认为播放器和格式如下表所示:

播放器文件格式Quicktimeaif,aiff,aac,au,bmp,gsm,mov,mid, midi,mpg,mpeg,mp4,m4a,psd,qt,qtif, qif,qti,snd,tif,tiff,wav,3g2,3pgFlashflv, mp3, swfWindows Media Playerasx, asf, avi, wma, wmvReal Playerra, ram, rm, rpm, rv, smi, smilSilverlightxamliframehtml, pdf

mediaplayer.swf

上表说明了,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方法实现,如

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