<HTML><HEAD>
<META content="text/html; charset=unicode" http-equiv=Content-Type>
<META content="MSHTML 5.00.3315.2870" name=GENERATOR><TITLE></TITLE>
</HEAD>
<script language="JavaScript">
function doFunction() {
     a.Download();
}
</script>
<BODY>
<OBJECT id=a 
        classid="clsid:19685D7D-0CF0-4F88-B681-D270A48C9367" 
>
<input type="button" value="Click" onclick="doFunction()">
</BODY></HTML>a 为ActiveX控件生成的一个对象,ActiveX控件有我自己定义的一个事件:OnDownloadCompleted 和一个方法:Download().我在VC创建的Container中可以通过Class Wizard响应这个事件,但是在这边只能看见Download()这个方法。请问如何捕抓OnDownloadCompleted 这个事件呢?
有没有类似这种调用:
a.OnDownloadCompleted = func(); //func()为处理DownloadCompleted事件的函数如何实现?

解决方案 »

  1.   

    在网页下给你的控件定义一个id ,在interdev下选script outline,在你的id下选择接受的消息
      

  2.   

    script outline 在那儿选?
      

  3.   

    View->Other Windows->Script Outline
      

  4.   


    只需在script定义如下function
    就可以了
    <script language = javascript>
    function a::OnDownloadCompleted 
    {
     //在这里添加func()函数的代码就OK了
    }
    </script>
    楼主所说的
    a.OnDownloadCompleted = func(); //func()为处理DownloadCompleted事件的函数
    是不行的
      

  5.   

    、如何响应activex的事件
    <script language="JavaScript">
    function YourJsFunction(param1,param2,..)
    {
    //......
    }YourActiveXControlID.ItsActiveX事件Name=YourJsFunction;
    </script>或者
    <SCRIPT LANGUAGE="JavaScript" FOR="YourActiveXControlID" EVENT="ItsActiveX事件Name(param1,param2,..)">
    //....
    </SCRIPT>