照着VCKbase里杨老师的教材抄了一遍代码(地址是http://www.vckbase.com/document/viewdoc/?id=1539),大致内容就是用Atl支持连接点的方式做个ActiveX,接着我想在IE中将这个事件触发JS函数,JS脚本这么写的:
<script>
function callback(){
alert("OK");
}
function Go()
{
var reg;
reg = new ActiveXObject("ProgID.test);
reg.Result = callback;
reg.Add(1,2);
}
</script>
但是callback怎么都没法触发,这个问题出在哪呢?
Result是连接点,Add是ActiveX的一个方法
<script>
function callback(){
alert("OK");
}
function Go()
{
var reg;
reg = new ActiveXObject("ProgID.test);
reg.Result = callback;
reg.Add(1,2);
}
</script>
但是callback怎么都没法触发,这个问题出在哪呢?
Result是连接点,Add是ActiveX的一个方法
另一种可选的做法是在页面里做成一个object元素,然后在标签里设置事件,比如<object ... Result="callback()"></object>
1楼都说了,IDispatch*ActiveX内部在想要调用callback时,用 IDispatch* 的 Invoke 执行即可...
<object ... > </object>看这里
http://hi.baidu.com/huhe/blog/item/817a59ee1ca423f8b3fb95de.html