<object classid="clsid:F3D0D36F-23F8-4682-A195-74C92B03D4AF" width="560" height="420" id="QvodPlayer" name="QvodPlayer" onError="downLoadQvod();"> <param name="url" id="qvodurl0" value="http://192.168.1.254:8089/ftp/ftpupload//2_1001_025201.AVI"> <param name="Autoplay" value="1"> <param name="Showcontrol" value="1"> </object>
<script type="text/javascript"> function downLoadQvod(){ if(window.confirm('請您先安裝QvodPlayer軟體,然後重新整理本頁才可以正常播放!')){window.open('<%=basePath%>video/qvod-setup.exe'); } } function play(){ QvodPlayer.url="F:/30230201/02-53-02.AVI"; QvodPlayer.play(); } var i=0; function getState(){ //將請求的地址封裝為數組 var urlArray=["F:/30230201/02-52-01.AVI","F:/30230201/02-53-02.AVI","F:/30230201/02-53-03.AVI"]; var state = QvodPlayer.PlayState; if(state==0&&i<urlArray.length){ QvodPlayer.url=urlArray[i]; QvodPlayer.play(); i++; } } //設定定時器,1s種請求一次 setInterval("getState()",1000);</script>
我們也可以點擊按鈕後出發定時器:
//單個視頻播放 function singlePlay(path){QvodPlayer.url="${video_path}"+path;QvodPlayer.play(); } //多個視頻連續播放 function multiPlay(index){ var urls=$("#s_"+index).text(); var i=1; if(urls!=""){ var urlArray=urls.split(","); singlePlay(urlArray[0]); setInterval(function(){ var state = QvodPlayer.PlayState; if(state==0&&i<urlArray.length-1){ singlePlay(urlArray[i]); i++; } },1000); } }
這樣,每1s中就是判斷上一個視頻檔案是否播放完畢,播放完後自動跳轉到下一集,不足的是沒有做到像快播那樣自動緩衝下一集的功能,只是一個檔案的跳轉而已!!
上面我們可以看到快播裡面一個方法:QvodPlayer.PlayState;它是調用了快播中的一個屬性,快播給我們的js和vb提供了相應的介面,正是因為這些介面的存在,我們才可以在頁面中可以對快播玩