JavaScript的navigator物件包括被稱為外掛的子物件。這個物件是一個陣列,為每個外掛安裝在瀏覽器中的一個條目。該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"> </embed> <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>