以下为以前收集的资料,没有验证过。如何判断ACTIVEX控件是否下载  
--------------------------------------------------------------------------------
大家可以看到在下载ACTIVEX控件时IE通常会弹出一个对话框问是否容许下载并执行该ACTIVEX控件,如果用户点否则控件无法下载,那我后面JS对控件方法的调用肯定会出错,如何避免这个问题呢?是否可以在调用方法之前用JS判断一下呢?请看我下面的讲解?方法一:你可以试着调用ActiveX control里的一个方法Method, 如调用不成功,则说明control还没有下载成功.例如:<script language="javascript">
var bControlLoaded=false;
function window.onload()
{
try
{
if (objectID.someMethod)
bControlLoaded = true;
}
catch (ex)
{}

alert(bControlLoaded);
}
</script>
<object id="objectID"></object>换句话说,在你调用方法这前,检查bControlLoaded是否返回真.若不是,则报警,也可以转到用户定义的网页显示control没有下载成功.<script language="javascript">
function window.onload()
{
try
{
if (objectID.someMethod)
bControlLoaded = true;
}
catch (ex)
{
alert("you did not install the control properly!");
window.location.href="someotherpage.html";
}
}
</script>方法二:<html XMLNS:CC>
<head>
<STYLE> 
@media all { CC\:clientCaps {behavior:url(#default#clientCaps)}} 
</Style>
<title>Client Capabilities</title>
</head>
<body onload="showComponentStatus();" bgcolor="#FFFFFF">
<CC:clientCaps id=clientCaps />
</body><script language=javascript>
function showComponentStatus()
{
displayComponent("Address Book", 
"{7790769C-0471-11D2-AF11-00C04FA35D02}");

displayComponent("DirectAnimation", 
"{283807B5-2C60-11D0-A31D-00AA00B92C03}");

displayComponent("DirectAnimation Java Classes", 
"{4F216970-C90C-11D1-B5C7-0000F8051515}");

displayComponent("DirectShow", 
"{44BBA848-CC51-11CF-AAFA-00AA00B6015C}");

displayComponent("Dynamic HTML Data Binding", 
"{9381D8F2-0288-11D0-9501-00AA00B911A5}");

displayComponent("Dynamic HTML Data Binding for Java", 
"{4F216970-C90C-11D1-B5C7-0000F8051515}"); 

displayComponent("Internet Connection Wizard", 
"{5A8D6EE0-3E18-11D0-821E-444553540000}");

displayComponent("Internet Explorer 5 Web Browser", 
"{89820200-ECBD-11CF-8B85-00AA005B4383}"); 

displayComponent("Internet Explorer Classes for Java", 
"{08B0E5C0-4FCB-11CF-AAA5-00401C608555}"); 

displayComponent("Internet Explorer Help", 
"{45EA75A0-A269-11D1-B5BF-0000F8051515}");

displayComponent("Internet Explorer Help Engine", 
"{DE5AED00-A4BF-11D1-9948-00C04F98BBC9}"); 

displayComponent("Windows Media Player", 
"{22D6F312-B0F6-11D0-94AB-0080C74C7E95}");

displayComponent("NetMeeting NT", 
"{44BBA842-CC51-11CF-AAFA-00AA00B6015B}");

displayComponent("Offline Browsing Pack", 
"{3AF36230-A269-11D1-B5BF-0000F8051515}");

displayComponent("Outlook Express", 
"{44BBA840-CC51-11CF-AAFA-00AA00B6015C}");

displayComponent("Task Scheduler", 
"{CC2A9BA0-3BDD-11D0-821E-444553540000}");

displayComponent("Microsoft virtual machine", 
"{08B0E5C0-4FCB-11CF-AAA5-00401C608500}");

displayComponent("VRML 2.0 Viewer", 
"{90A7533D-88FE-11D0-9DBE-0000C0411FC3}");

displayComponent("Wallet", 
"{1CDEE860-E95B-11CF-B1B0-00AA00BBAD66}");

}

function displayComponent(compDesc, compID)
{
if (clientCaps.isComponentInstalled(compID, "componentID"))
{
alert("Installed.");
}
}
</script>
</html>
 检测浏览器是否安装了Quicktime和Shockwave视频插件  
--------------------------------------------------------------------------------
将如下代码加入HTML的<BODY>区: <script LANGUAGE="JavaScript">
  var myPlugin =navigator.plugins["Shockwave"];
  if (myPlugin)
     document.writeln("你已经安装了Shockwave!")
   else
     document.writeln("你尚未安装Shockwave!")
// -->
</script><script LANGUAGE="JavaScript">
<!--
  var myPlugin =navigator.plugins["Quicktime"];
  if (myPlugin)
     document.writeln("你已经安装了Quicktime!")
  else
     document.writeln("你尚未安装Quicktime!")
// -->
</script>