在DHTML中响应ActiveX控件的事件

来源:互联网 发布:淘宝旧书店 编辑:程序博客网 时间:2024/05/15 14:13
ActiveX控件可以用连接点创建事件,此事件可以在DHTML网页中被javascript函数处理,在js中响应ActiveX控件事件的方法如下:

1. 静态创建方法     
<script>
function  OnEvent1()
{
}
</script>
<OBJECT id="myControl"
                   codeBase="myControl.cab"              
                   classid="clsid:1ACA02DF-AF52-4371-89B9-B9245BD21831"
></OBJECT>
<script       language=javascript
                   FOR="myControl"
                   EVENT="event1()">   
                   OnEvent1();
</script>


2. 动态创建方法
function onBodyLoad()
{
        myControl = document.createElement("OBJECT");
        document.body.appendChild(myControl);
        myControl.codeBase = "myControl.cab";
        myControl.classid = "clsid:1ACA02DF-AF52-4371-89B9-B9245BD21831";
       
        myControl.attachEvent("event1", OnEvent1);
}

<body onload="onBodyLoad()">
...

3. 错误的动态创建方法

function onBodyLoad()
{
        myControl = new ActiveXObject(myControl.Test);
        myControl.attachEvent("event1", OnEvent1);
        ~~~~~~~~~~~~~~~~~~此时会报告“无此方法”,这是因为
用new ActiveXObject创建的对象并非一个DOM对象,因此不能
调用attachEvent方法。而用document.createElement("OBJECT")
创建的才是一个DOM对象。
}

<body onload="onBodyLoad()">
...
原创粉丝点击