是否有针对Windows Media Player的文档化JavaScript API?

iro*_*ith 7 javascript windows-media-player

我想使用JavaScript来控制嵌入式Windows Media Player,以及访问播放器公开的任何属性.我在网上找到了一些hacky示例,但没有具体的内容.

我真的需要访问播放,暂停,停止,搜索,全屏等.我还希望能够访问播放器正在播放的任何事件.

帮助会很精彩(我已经有了一个Flash等效,只是你知道),谢谢!

Mis*_*cky 11

API需要Internet Explorer本机的ActiveX连接,或者可以使用Firefox插件.

这是一个可以帮助您入门的示例页面.

<html>
<head>
  <title>so-wmp</title>
  <script>

    onload=function() {
      player = document.getElementById("wmp");
      player.URL = "test.mp3";
    };

    function add(text) {
      document.body
        .appendChild(document.createElement("div"))
        .appendChild(document.createTextNode(text));
    };

    function handler(type) {
      var a = arguments;
      add(type +" = "+ PlayStates[a[1]]);
    };

    // http://msdn.microsoft.com/en-us/library/bb249361(VS.85).aspx
    var PlayStates = {
       0: "Undefined", // Windows Media Player is in an undefined state.
       1: "Stopped", // Playback of the current media item is stopped.
       2: "Paused", // Playback of the current media item is paused. When a media item is paused, resuming playback begins from the same location.
       3: "Playing", // The current media item is playing.
       4: "ScanForward", // The current media item is fast forwarding.
       5: "ScanReverse", // The current media item is fast rewinding.
       6: "Buffering", // The current media item is getting additional data from the server.
       7: "Waiting", // Connection is established, but the server is not sending data. Waiting for session to begin.
       8: "MediaEnded", // Media item has completed playback.
       9: "Transitioning", // Preparing new media item.
      10: "Ready", // Ready to begin playing.
      11: "Reconnecting" // Reconnecting to stream.
    };

  </script>
  <script for="wmp" event="PlayStateChange(newState)">
    // http://msdn.microsoft.com/en-us/library/bb249362(VS.85).aspx
    handler.call(this, "playstatechange", newState);
  </script>
</head>
<body>
  <div id="page">
    <object id="wmp"
       classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6"
          type="application/x-oleobject">
    </object>
  </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)


iro*_*ith 6

Microsoft的开发人员中心有一个API,但只有在使用active-x嵌入Windows Media Player时它才有效.

要"了解"有关API的更多信息,请查看MSDN:http://msdn.microsoft.com/en-us/library/dd564034(VS.85).aspx