如何判断一个OCX下载完毕?!

zerochang 2003-01-29 09:11:54
我看到网上有些flash做的页面,可以在下载ocx or something else的时候给出一个loding页面或者别的页面,当下载完后再转到真正的页面,不知道这样的效果怎么样实现,用js可以实现吗?谢谢
...全文
79 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zerochang 2003-01-31
  • 打赏
  • 举报
回复
多谢,你的想法我明白了,试试,结贴放分先。
laisiwei 2003-01-30
  • 打赏
  • 举报
回复
up
zerochang 2003-01-30
  • 打赏
  • 举报
回复
???还是没有人?
wocsdn 2003-01-30
  • 打赏
  • 举报
回复
还有一个xml和javascript调用的方法
<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>
wocsdn 2003-01-30
  • 打赏
  • 举报
回复
接分


你可以试着调用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>

zerochang 2003-01-29
  • 打赏
  • 举报
回复
??No one knows?

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧