jquery media 插件中的大坑

Jquery media是一款跨浏览器的视频播放插件,支持Flash, Quicktime, Windows Media Player, Real Player, MP3, Silverlight等格式。

它对应于不同的格式去加载对应的播放器,映射如下

播放器

文件格式

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

这个插件很好的解决了在不同浏览器下播放视频的问题。

不过它有一个大坑,在jquery.metadata.js这个文件中,它居然重写了$.fn.data()方法:

$.fn.data = function(){ return this[0][$.meta.single || "data"];};

这个方法令Jquery原有的data方法失效了,如果在项目中其他地方使用到了Jquery本身自带的data方法的话,那么会报找不到某个属性的错误。

我的解决方法是在jquery.metadata.js这个文件中将这个方法重命名:

$.fn.dataSec = function(){ return this[0][$.meta.single || "data"];};

然后全文检索media插件中其他地方引用到了这个data方法的地方,改为dataSec即可。


  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值