JavaScript - 多媒体



JavaScript 的 navigator 对象包含一个名为 plugins 的子对象。此对象是一个数组,其中每个条目代表浏览器上安装的一个插件。navigator.plugins 对象仅受 Netscape、Firefox 和 Mozilla 支持。

示例

以下是一个示例,演示如何列出浏览器中安装的所有插件:

<html>
   <head>
      <title>List of Plug-Ins</title>
   </head>
   
   <body>
      <table border = "1">
         <tr>
            <th>Plug-in Name</th>
            <th>Filename</th>
            <th>Description</th>
         </tr>
         
         <script language = "JavaScript" type = "text/javascript">
            for (i = 0; i<navigator.plugins.length; i++) {
               document.write("<tr><td>");
               document.write(navigator.plugins[i].name);
               document.write("</td><td>");
               document.write(navigator.plugins[i].filename);
               document.write("</td><td>");
               document.write(navigator.plugins[i].description);
               document.write("</td></tr>");
            }
         </script>
      </table>      
   </body>
</html>

检查插件

每个插件在数组中都有一个条目。每个条目都有以下属性:

  • name - 插件的名称。

  • filename - 加载以安装插件的可执行文件。

  • description - 开发人员提供的插件描述。

  • mimeTypes - 一个数组,其中每个条目代表插件支持的一种 MIME 类型。

您可以在脚本中使用这些属性来查找已安装的插件,然后使用 JavaScript 播放相应的媒体文件。请看下面的例子。

<html>   
   <head>
      <title>Using Plug-Ins</title>
   </head>
   
   <body>   
      <script language = "JavaScript" type = "text/javascript">
         media = navigator.mimeTypes["video/quicktime"];
         
         if (media) {
            document.write("<embed src = 'quick.mov' height = 100 width = 100>");
         } else {
            document.write("<img src = 'quick.gif' height = 100 width = 100>");
         }
      </script>      
   </body>
</html>

注意 - 此处我们使用 HTML <embed> 标签嵌入多媒体文件。

控制多媒体

让我们来看一个几乎在所有浏览器中都能工作的真实示例:

<html>   
   <head>
      <title>Using Embeded Object</title>
      
      <script type = "text/javascript">
         function play() {
            if (!document.demo.IsPlaying()) {
               document.demo.Play();
            }
         }
         function stop() {
            if (document.demo.IsPlaying()) {
               document.demo.StopPlay();
            }
         }
         function rewind() {
            if (document.demo.IsPlaying()) {
               document.demo.StopPlay();
            }
            document.demo.Rewind();
         }
      </script>
   </head>
   
   <body>      
      <embed id = "demo" name = "demo"
         src = "http://www.amrood.com/games/kumite.swf"
         width = "318" height = "300" play = "false" loop = "false"
         pluginspage = "http://www.macromedia.com/go/getflashplayer"
         swliveconnect = "true">
      
      <form name = "form" id = "form" action = "#" method = "get">
         <input type = "button" value = "Start" onclick = "play();" />
         <input type = "button" value = "Stop" onclick = "stop();" />
         <input type = "button" value = "Rewind" onclick = "rewind();" />
      </form>      
   </body>
</html>
广告
© . All rights reserved.