記錄下js控制網頁WMP播放的屬性

還是覺得使用Flash音樂播放器的好,兼容各個瀏覽器。不過,工作內容不是由自己決定的。。。鬱悶

 

來源:

 

http://www.jb51.net/article/16402.htm

 

 

http://www.jb51.net/article/11075.htm

 

不是偶 寫道
播放: MediaPlayer.Play()
暫停: MediaPlayer.Pause()
定位: MediaPlayer.SetCurrentEntry(lWhichEntry)
MediaPlayer.Next()
MediaPlayer.Previous()
循環: MediaPlayer.PlayCount = 0
0:the clip plays repeatedly
1:once
停止: MediaPlayer.Stop()
==================================
AllowChangeDisplaySize 返回或設置最終用戶是否能設置顯示尺寸(邏輯型)
AllowScan 返回或設置是否允許掃描(邏輯型)
AnimationAtStart 返回或設置控件開始播放之前是否先播放一個動畫序列(邏輯型)
AudioStream 返回或設置音頻流的編號(用於多音頻流的剪輯,默認爲-1)(長整型)
AutoRewind 返回或設置媒體文件播放完畢後是否自動迴繞(邏輯型)
AutoSize 返回或設置是否自動調整控件大小來適應載入的媒體(邏輯型)
AutoStart 返回或設置在載入媒體文件之後是否自動開始播放(邏輯型)
Balance 返回或設置指定立體聲媒體文件的播放聲道(-10000爲左聲道,10000爲右聲道,0爲立體聲)(長整型)
Bandwidth 返回或設置當前文件的帶寬(長整型)
BaseURL 返回基本的 HTTP URL(字符串)
BufferingCount 返回媒體文件回放時緩衝的總時間(長整型)
BufferingProgress 返回緩衝完成的百分比(長整型)
BufferingTime 返回緩衝的時間(雙精度型)
CanPreview 返回或設置當前顯示的剪輯是能否被預覽(邏輯型)
CanScan 返回或設置當前文件是否支持快進或快退(邏輯型)
CanSeek 返回或設置當前文件是否能搜索並定位到某個時間(邏輯型)
CanSeekToMarkers 返回或設置文件是否支持搜索到標籤(邏輯型)
CaptioningID 返回在標題中顯示的幀或控件的名稱(字符串)
ChannelDescription 返回電臺的描述(字符串)
ChannelName 返回電臺的名稱(字符串)
ChannelURL 返回電臺的元文件的位置(字符串)
ClickToPlay 返回或設置是否可以通過點擊圖像暫停或播放剪輯(邏輯型)
ClientID 返回客戶端唯一的標識符(字符串)
CodecCount 返回文件使用的可安裝的 codecs 的個數(長整型)
ContactAddress 返回電臺的聯繫地址(字符串)
ContactEmail 返回電臺的聯繫電子郵件地址(字符串)
ContactPhone 返回電臺的聯繫電話(字符串)
CreationDate 返回剪輯的創建日期(日期型)
CurrentMarker 返回或設置當前書籤號碼(長整型)
CurrentPosition 返回或設置剪輯的當前位置(雙精度型)
CursorType 返回或設置指針類型(長整型)
DefaultFrame 返回或設置控件的默認目標 Http 幀(字符串)
DisplayBackColor 返回或設置顯示面板的背景色(OLE_COLOR 值)
DisplayForeColor 返回或設置顯示面板的前景色(OLE_COLOR 值)
DisplayMode 返回或設置顯示面板是否用秒或幀的形式顯示當前位置(MPDisplayModeConstants 值)
DisplaySize 返回或設置圖像顯示窗口的大小(MPDisplaySizeConstant 值)
Duration 返回或設置剪輯剪輯的播放時間(雙精度型)
EnableContextMenu 返回或設置是否允許使用上下文菜單(邏輯型)
Enabled 返回或設置控件是否可用(邏輯型)
EnableFullScreenControls 返回或設置全屏幕控制是否可用(邏輯型)
EnablePositionControls 返回或設置位置控制是否可用(邏輯型)
EnableTracker 返回或設置搜索欄控制是否可用(邏輯型)
ErrorCode 返回當前錯誤代碼(長整型)
ErrorCorrection 返回當前剪輯的錯誤修正類型(長整型)
ErrorDescription 返回當前錯誤的描述(字符串)
FileName 返回或設置要播放的剪輯的文件名稱(字符串)
HasError 返回控件是否發生錯誤(邏輯型)
HasMultipleItems 返回或設置控件是否包含某些多重項目的內容(邏輯型)
ImageSourceHeight 返回或設置當前剪輯的原始圖像高度(長整型)
ImageSourceWidth 返回或設置當前剪輯的原始圖像寬度(長整型)
InvokeURLs 返回或設置 URL 是否自動發送請求(邏輯型)
IsBroadcast 返回或設置源是否進行廣播(邏輯型)
IsDurationValid 返回或設置持續時間值是否有效(邏輯型)
Language 返回或設置用於本地化語言支持的當前區域語言(長整型)
LostPackets 返回丟失的數據包數量(長整型)
MarkerCount 返回文件書籤的數量(長整型)
Mute 返回或設置控件是否播放聲音(邏輯型)
OpenState 返回控件的內容源狀態(長整型)
PlayCount 返回或設置一個剪輯播放的次數(長整型)
PlayState 返回控件的當前操作狀態(長整型)
PreviewMode 返回或設置控件是否處在預覽模式(邏輯型)
Rate 返回或設置回放幀頻(雙精度型)
ReadyState 返回控件是否準備就緒(ReadyStateConstant 值)
ReceivedPackets 返回已接收到的數據包的數量(長整型)
ReceptionQuality 返回最後 30 秒接收到的數據包的百分比(長整型)
RecoveredPackets 返回已轉換的數據包的數量(長整型)
SAMIFileName 返回或設置 closed-captioning 文件名(字符串)
SAMILang 返回或設置 closed captioning 語言(字符串)
SAMIStyle 返回或設置 closed captioning 風格(字符串)
SelectionEnd 返回或設置流的結束位置(雙精度型)
SelectionStart 返回或設置流的起始位置(雙精度型)
SendErrorEvents 返回或設置控件是否發送錯誤事件(邏輯型)
SendKeyboardEvents 返回或設置控件是否發送鍵盤事件(邏輯型)
SendMouseClickEvents 返回或設置控件是否發送鼠標單擊事件(邏輯型)
SendMouseMoveEvents 返回或設置控件是否發送鼠標移動事件(邏輯型)
SendOpenStateChangeEvents 返回或設置控件是否發送打開狀態改變事件(邏輯型)
SendPlayStateChangeEvents 返回或設置控件是否發送播放狀態改變事件(邏輯型)
SendWarningEvents 返回或設置控件是否發送警告事件(邏輯型)
ShowAudioControls 返回或設置是否顯示音頻控制(邏輯型)
ShowCaptioning 返回或設置是否顯示字幕(邏輯型)
ShowControls 返回或設置控制面板是否可見(邏輯型)
ShowDisplay 返回或設置是否顯示顯示面板(邏輯型)
ShowGotoBar 返回或設置是否顯示跳轉欄(邏輯型)
ShowPositionControls 返回或設置是否顯示位置控制(邏輯型)
ShowStatusBar 返回或設置是否顯示狀態欄(邏輯型)
ShowTracker 返回或設置是否顯示搜索欄(邏輯型)
SourceLink 返回內容文件的路徑(字符串)
SourceProtocol 返回用於接收數據的協議(長整型)
StreamCount 返回媒體幀的數量(長整型)
TransparentAtStart 返回或設置在開始播放之前和停止之後控件是否透明(邏輯型)
VideoBorder3D 返回或設置視頻邊框是否顯示爲 3D 效果(邏輯型)
VideoBorderColor 返回或設置視頻邊框的顏色(OLE_顏色)
VideoBorderWidth 返回或設置視頻邊框的寬度(長整型)
Volume 返回或設置音量(長整型)
==============================================
Mediaplayer屬性和方法

屬性/方法名:說明:
[基本屬性]  
URL:String; 指定媒體位置,本機或網絡地址
uiMode:String; 播放器界面模式,可爲Full, Mini, None, Invisible
playState:integer; 播放狀態,1=停止,2=暫停,3=播放,6=正在緩衝,9=正在連接,10=準備就緒
enableContextMenu:Boolean; 啓用/禁用右鍵菜單
fullScreen:boolean; 是否全屏顯示
[controls] wmp.controls //播放器基本控制
controls.play; 播放
controls.pause; 暫停
controls.stop; 停止
controls.currentPosition:double; 當前進度
controls.currentPositionString:string; 當前進度,字符串格式。如“00:23”
controls.fastForward; 快進
controls.fastReverse; 快退
controls.next; 下一曲
controls.previous; 上一曲
[settings] wmp.settings //播放器基本設置
settings.volume:integer; 音量,0-100
settings.autoStart:Boolean; 是否自動播放
settings.mute:Boolean; 是否靜音
settings.playCount:integer; 播放次數
[currentMedia] wmp.currentMedia //當前媒體屬性
currentMedia.duration:double; 媒體總長度
currentMedia.durationString:string; 媒體總長度,字符串格式。如“03:24”
currentMedia.getItemInfo(const string); 獲取當前媒體信息"Title"=媒體標題,"Author"=藝術家,"Copyright"=版權信息,"Description"=媒體內容描述,"Duration"=持續時間(秒),"FileSize"=文件大小,"FileType"=文件類型,"sourceURL"=原始地址
currentMedia.setItemInfo(const string); 通過屬性名設置媒體信息
currentMedia.name:string; 同 currentMedia.getItemInfo("Title")
[currentPlaylist] wmp.currentPlaylist //當前播放列表屬性
currentPlaylist.count:integer; 當前播放列表所包含媒體數
currentPlaylist.Item[integer]; 獲取或設置指定項目媒體信息,其子屬性同wmp.currentMedia

 

 

WMP-網頁中常見屬性和方法 
<object classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" type="application/x-oleobject" id="wmp" width="0" height="0" style="width:0px;height:0px;"></object> 
//基本屬性  
wmp.URL:String; //指定媒體位置,本機或網絡地址 
wmp.uiMode:String; //播放器界面模式,可爲Full, Mini, None, Invisible 
wmp.playState:integer; //播放狀態,1=停止,2=暫停,3=播放,6=正在緩衝,9=正在連接,10=準備就緒 
wmp.enableContextMenu:Boolean; //啓用/禁用右鍵菜單 
wmp.fullScreen:boolean; //是否全屏顯示 
//播放器常用控制 
wmp.controls.play; //播放 
wmp.controls.pause; //暫停 
wmp.controls.stop; //停止 
wmp.controls.currentPosition:double; //當前進度 
wmp.controls.currentPositionString:string; //當前進度,字符串格式。如“00:23” 
wmp.controls.fastForward; //快進 
wmp.controls.fastReverse; //快退 
wmp.controls.next; //下一曲 
wmp.controls.previous; //上一曲 
//播放器常用設置 
wmp.settings.volume:integer; //音量,0-100 
wmp.settings.autoStart:Boolean; //是否自動播放 
wmp.settings.mute:Boolean; //是否靜音 
wmp.settings.playCount:integer; //播放次數 
wmp.settings.balance = -100; //(左聲) 
wmp.settings.balance=100; //(右聲) 
wmp.settings.balance=0; //(全聲) 
//常用當前媒體屬性 
wmp.currentMedia.duration:double; //媒體總長度 
wmp.currentMedia.durationString:string; //媒體總長度,字符串格式。如“03:24” 
wmp.currentMedia.getItemInfo(const string); //獲取當前媒體信息 
//"Title"=媒體標題 "Author"=藝術家 "Copyright"=版權信息 
//"Description"=媒體內容描述 "Duration"=持續時間(秒) 
//"FileSize"=文件大小 "FileType"=文件類型 "sourceURL"=原始地址 
wmp.currentMedia.setItemInfo(const string); //通過屬性名設置媒體信息 
wmp.currentMedia.name:string; //同currentMedia.getItemInfo("Title") 
wmp.network.bufferingProgress; //緩衝百分比 
wmp.network.downloadProgress; //下載百分比 
較全面的頁面參數設置 
<object id="Player" height="10" width="100" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"> 
<param name="URL" value="" /> 
<param name="rate" value="1" /> 
<param name="balance" value="0" /> 
<param name="currentPosition" value="0" /> 
<param name="defaultFrame" /> 
<param name="playCount" value="1" /> 
<param name="autoStart" value="true" /> 
<param name="currentMarker" value="0" /> 
<param name="invokeURLs" value="-1" /> 
<param name="baseURL" /> 
<param name="volume" value="50" /> 
<param name="mute" value="0" /> 
<param name="uiMode" value="invisible" /> 
<param name="stretchToFit" value="0" /> 
<param name="windowlessVideo" value="0" /> 
<param name="enabled" value="-1" /> 
<param name="enableContextMenu" value="-1" /> 
<param name="fullScreen" value="0" /> 
<param name="SAMIStyle" /> 
<param name="SAMILang" /> 
<param name="SAMIFilename" /> 
<param name="captioningID" /> 
<param name="enableErrorDialogs" value="0" /> 
<param name="_cx" value="6482" /> 
<param name="_cy" value="6350" /> 
</object> 
相關引用及解釋參見上面! 
<script language="javascript"> 
var WMP=this.document.getElementById("Player"); 
//播放 
function playthis(url) 
{ 
WMP.URL = url; 
WMP.controls.play(); 
} 
</script> 
如何播放一個音樂列表? 
思路:播放一個音樂列表,需要實現兩個目的,一是循環,二是判斷是否當前歌曲播放完成.只有當前歌曲播放完成後才進行循環.實現檢測. 
var i=0; 
playthis(firstmusic) 
//實時檢測器,間隔時間爲1秒 
d=setInterval(function shwotimer() 
{ 
if(WMP.playState==1) 
{ 
if(i>=SoundArray.length) 
{ 
//當播放所有完成後清空循環 
clearInterval(d); 
} 
else 
{ 
//當播放完成後播放下一首 
playthis(url); 
} 
} 
} 
,1000); 
如有其它控制需要,如暫停,可設置一個標識,即當前暫停,則下一步爲播放,反之亦然 
var pauseflag=0; 
function Command_Pause() 
{ 
if(pauseflag==0) 
{ 
WMP.controls.Pause(); 
} 
else 
{ 
WMP.controls.play(); 
} 
pauseflag=pauseflag==1?0:1; 
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章