使用 jQuery Media Plugin 實做影片播放前預覽圖片功能

分享到噗浪!

我們最近有個需求需要在首頁播放 wmv 影片,但為了不驚擾使用者,所以預設是不自動播放的,但是在頁面中宣告載入影片的地方卻會黑黑的一片 (如下圖示),因此客戶就要求說要先顯示一張圖片,然後點擊圖片後再播放影片。雖然不是個很難的功能,但我找到了個 jQuery Media Plugin 可以很方便的幫我處理這個需求。

當載入 Media Player ActiveX 時若預設不自動播放影片會顯示黑壓壓的一片 

jQuery Media Plugin 不止可以播放 wmv 影片,還支援多種影片格式,其中包括:

  • 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

如此多的影片、動畫格式之外,還支援 sIFR ( Scalable Inman Flash Replacement ),甚至於其他文件格式(pdf, html),都可以透過這套 jQuery Media Plugin 進行動態載入的工作,如果副檔名是尚未定義的,你還可以自行定義播放器與副檔名的對應,可說是非常的實用。

jQuery Media Plugin 的運作原理也很簡單,先宣告一個 <a> 標籤,套上 class="media" 類別樣式,然後執行此 Plugin: $('a.media').media();

要實做影片播放前預覽圖片的功能就變的十分容易,如下 HTML 應該很容易理解:

<a class="media {width:260, height:195, autoplay:1}" href="video1.wmv" 
   onclick="$(this).media();return false;">
    <img src="/images/video1_image.jpg" width="260" height="195" />
</a>

主要需注意的地方只有幾點:

  1. 設定一個圖片用來做影片預覽或進行播放影片用的示意圖,高度寬度需先指定。
  2. 在套用一個 A 標籤 (超連結),並套上 class 屬性,並明確指定播放時影片的高度(height)、寬度(width)、與是否自動播放(autoplay)。
  3. 然後在 A 標籤再多加上一個 onclick 事件,用以啟用 jQuery Media Plugin,並記得加上 return false; 避免直接下載 video1.wmv 影片。

不過目前的最新版 ( v0.90 ) 有些問題,無法正確解析設定在 <a> 標籤 class 屬性中的選項值(Options),我有對 jquery.media.js 做出一些錯誤修正,需要的人可以到以下網址下載:

jquery.media.js (15.40 kb)

相關連結

  

此文章由 will 發表於 2009/5/28 下午 04:58:00

永久連結 | 評論 (10) | 此文章的RSSRSS comment feed |

分類: JavaScript

標籤: ,

評論

五月 29. 2009 02:51

ironman

感謝保哥提供的資訊
不過我如果加onclick="$(this).media();return false;"
都會顯示這個$(this).media()出錯ㄟ
還有是不是這個jquery.metadata.js不用加在頁面呢?
謝謝

ironman 台灣

五月 29. 2009 04:12

Will

jquery.metadata.js 一定要加!

Will 台灣

六月 29. 2009 18:36

游客

为什么flv播放不出来呢

游客 中華人民共和國

六月 29. 2009 21:42

demo

回樓上的:
因為IIS原生不認識FLV,需要設定MINI 去網路上搜尋 IIS FLV 應該就會有很多教學了

demo 台灣

八月 5. 2009 17:33

haibin666

朋友啊,我的为什么不能自动播放呢?

flv mp3 都不行的  

haibin666 中華人民共和國

八月 5. 2009 17:39

will

應該是用戶端不支持 flv, mp3 的檔案類型吧

will 台灣

八月 21. 2009 16:01

haibin606

还是不行,总是播放不了,真是奇怪。

按照你的方法做,也显示不了图片,

我发现这个插件,开始的时候显示的是黑色的还有一个播放按钮,我想要的效果是像 优酷那样,没播放前,要显示一点(可能是里面内容的截图)的效果。不要黑色的屏。

haibin606 中華人民共和國

十月 25. 2009 03:16

dislin

保哥您好啊,
我照你的方法去做,也是無法產生預覽圖
<a class="media {width:540, height:406, autoplay:1}" href="upload/video/img7052009102525527.flv" onclick="$(this).media();return false;">
<img src="upload/video/img7052009102525527.jpg" width="540" height="406" />
</a>
可以麻煩你指導一下嗎?

dislin 台灣

十月 26. 2009 09:50

dislin

保哥,flv已解決了,感謝您提供如此好用的plugin

dislin 台灣

十一月 30. 2009 11:31

haibin606

dislin朋友你好

能否告诉我下,你是如何解决的?

谢谢  

我的Q:1150361317

haibin606 中華人民共和國

新增評論


( 您輸入的Email不會顯示於網站上 )

  Country flag

biuquote
  • 評論
  • 線上預覽
Loading