链接类

VML

按钮类

标题类

表单类

表格类

菜单类

窗口类

对象类

滚动条

键盘类

框架类

例子类

模拟类

日期类

色彩类

鼠标类

数学类

图片类

文字类

下拉框

样式类

游戏类

状态栏

资料类

字幕类

其它类

 ·Flash
 ·画线
 ·日期控件
 ·Realplayer...
 ·显示浏览器的工具栏
 ·获取所有系统字体
 ·打印
 ·实用菜单
 ·弹出光驱
 ·sendkeys
您当前位置:好素材首页 -> 网页特效 -> 对象类
查看信息

如何判断ACTIVEX控件是否下载
好素材网 www.HaoSc.com 02月22日 11:49

[查看演示]  源码如下
----------------------------------------------------------
<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>如何判断ACTIVEX控件是否下载-www.51windows.Net</title>
<style>
<!--
body { font-size: 12px }
-->
</style>
</head>

<body>

<p>
  大家可以看到在下载ACTIVEX控件时IE通常会弹出一个对话框问是否容许下载并执行该ACTIVEX控件,如果用户点否则控件无法下载,那我后面JS对控件方法的调用肯定会出错,如何避免这个问题呢?是否可以在调用方法之前用JS判断一下呢?请看我下面的讲解?</p>
<p><br>
方法一:<br>
&nbsp; 你可以试着调用ActiveX control里的一个方法Method, 如调用不成功,则说明control还没有下载成功.例如:<br>
&lt;script language=&quot;javascript&quot;&gt;<br>
var bControlLoaded=false;<br>
function window.onload()<br>
{<br>
try<br>
{<br>
if (objectID.someMethod)<br>
bControlLoaded = true;<br>
}<br>
catch (ex)<br>
{}<br>
alert(bControlLoaded);<br>
}<br>
&lt;/script&gt;<br>
&lt;object id=&quot;objectID&quot;&gt;&lt;/object&gt;</p>
<p><br>
 </p>
<p>  换句话说,在你调用方法这前,检查bControlLoaded是否返回真.若不是,则报警,也可以转到用户定义的网页显示control没有下载成功.<br>
&lt;script language=&quot;javascript&quot;&gt;<br>
function window.onload()<br>
{<br>
try<br>
{<br>
if (objectID.someMethod)<br>
bControlLoaded = true;<br>
}<br>
catch (ex)<br>
{<br>
alert(&quot;you did not install the control properly!&quot;);<br>
window.location.href=&quot;someotherpage.html&quot;;<br>
}<br>
}<br>
&lt;/script&gt;</p>
<p><br>
 </p>
<p>方法二:<br>
&lt;html XMLNS:CC&gt;<br>
&lt;head&gt;<br>
&lt;STYLE&gt; <br>
@media all { CC\:clientCaps {behavior:url(#default#clientCaps)}} <br>
&lt;/Style&gt;<br>
&lt;title&gt;Client Capabilities&lt;/title&gt;<br>
&lt;/head&gt;<br>
&lt;body onload=&quot;showComponentStatus();&quot; bgcolor=&quot;#FFFFFF&quot;&gt;<br>
&lt;CC:clientCaps id=clientCaps /&gt;<br>
&lt;/body&gt;</p>
<p><br>
 </p>
<p>&lt;script language=javascript&gt;<br>
function showComponentStatus(){<br>
displayComponent(&quot;Address Book&quot;, <br>
&quot;{7790769C-0471-11D2-AF11-00C04FA35D02}&quot;);<br>
displayComponent(&quot;DirectAnimation&quot;, </p>
<p><br>
 </p>
<p>&quot;{283807B5-2C60-11D0-A31D-00AA00B92C03}&quot;);<br>
displayComponent(&quot;DirectAnimation Java Classes&quot;, </p>
<p><br>
 </p>
<p>&quot;{4F216970-C90C-11D1-B5C7-0000F8051515}&quot;);<br>
displayComponent(&quot;DirectShow&quot;, &quot;{44BBA848-CC51-11CF-AAFA-00AA00B6015C}&quot;);<br>
displayComponent(&quot;Dynamic HTML Data Binding&quot;, </p>
<p><br>
 </p>
<p>&quot;{9381D8F2-0288-11D0-9501-00AA00B911A5}&quot;);<br>
displayComponent(&quot;Dynamic HTML Data Binding for Java&quot;, </p>
<p><br>
 </p>
<p>&quot;{4F216970-C90C-11D1-B5C7-0000F8051515}&quot;); <br>
displayComponent(&quot;Internet Connection Wizard&quot;, </p>
<p><br>
 </p>
<p>&quot;{5A8D6EE0-3E18-11D0-821E-444553540000}&quot;);<br>
displayComponent(&quot;Internet Explorer 5 Web Browser&quot;, </p>
<p><br>
 </p>
<p>&quot;{89820200-ECBD-11CF-8B85-00AA005B4383}&quot;); <br>
displayComponent(&quot;Internet Explorer Classes for Java&quot;, </p>
<p><br>
 </p>
<p>&quot;{08B0E5C0-4FCB-11CF-AAA5-00401C608555}&quot;); <br>
displayComponent(&quot;Internet Explorer Help&quot;, </p>
<p><br>
 </p>
<p>&quot;{45EA75A0-A269-11D1-B5BF-0000F8051515}&quot;);<br>
displayComponent(&quot;Internet Explorer Help Engine&quot;, </p>
<p><br>
 </p>
<p>&quot;{DE5AED00-A4BF-11D1-9948-00C04F98BBC9}&quot;); <br>
displayComponent(&quot;Windows Media Player&quot;, </p>
<p><br>
 </p>
<p>&quot;{22D6F312-B0F6-11D0-94AB-0080C74C7E95}&quot;);<br>
displayComponent(&quot;NetMeeting NT&quot;, </p>
<p><br>
 </p>
<p>&quot;{44BBA842-CC51-11CF-AAFA-00AA00B6015B}&quot;);<br>
displayComponent(&quot;Offline Browsing Pack&quot;, </p>
<p><br>
 </p>
<p>&quot;{3AF36230-A269-11D1-B5BF-0000F8051515}&quot;);<br>
displayComponent(&quot;Outlook Express&quot;, </p>
<p><br>
 </p>
<p>&quot;{44BBA840-CC51-11CF-AAFA-00AA00B6015C}&quot;);<br>
displayComponent(&quot;Task Scheduler&quot;, </p>
<p><br>
 </p>
<p>&quot;{CC2A9BA0-3BDD-11D0-821E-444553540000}&quot;);<br>
displayComponent(&quot;Microsoft virtual machine&quot;, </p>
<p><br>
 </p>
<p>&quot;{08B0E5C0-4FCB-11CF-AAA5-00401C608500}&quot;);<br>
displayComponent(&quot;VRML 2.0 Viewer&quot;, </p>
<p><br>
 </p>
<p>&quot;{90A7533D-88FE-11D0-9DBE-0000C0411FC3}&quot;);<br>
displayComponent(&quot;Wallet&quot;, <br>
&quot;{1CDEE860-E95B-11CF-B1B0-00AA00BBAD66}&quot;);<br>
}</p>
<p><br>
 </p>
<p>function displayComponent(compDesc, compID){<br>
if (clientCaps.isComponentInstalled(compID, &quot;componentID&quot;)){<br>
alert(&quot;Installed.&quot;);<br>
}<br>
}<br>
&lt;/script&gt;<br>
&lt;/html&gt;</p>

</body>

</html>

<div style="position: absolute; top: 10; right: 10; width: 148; height: 18;cursor:hand">
<input type="button" name="Button" value="查看源代码" onClick= 'window.location = "view-source:" + window.location.href'></div>


此信息共 1 页 [1]