嵌入ActiveX对象与<object>标签或使用新的ActiveXObject()创建一个之间的区别

Dre*_*rNS 4 javascript internet-explorer activex activexobject

我注意到有两种方法可以在JavaScript中创建ActiveX对象,一种是通过嵌入:

<object id="TestControl" classid="clsid:xxx-xx-xx-xx"></object>
Run Code Online (Sandbox Code Playgroud)

然后使用DOM获取对象:

var myControl = document.getElementById('TestControl');
Run Code Online (Sandbox Code Playgroud)

另一种方法是创建ActiveXObject的实例:

var myControl2 = new ActiveXObject('Test.TestControl');
Run Code Online (Sandbox Code Playgroud)

与ActiveX对象的角度究竟有什么不同?一种方法比另一种更好吗?性能有什么不同吗?

谢谢.

pau*_*sm4 5

这两者几乎相同.

<object>符号是官方HTML; var myControl2 = new ActiveXObject('Test.TestControl');只能用于JScript或ASP等脚本语言; 它不能直接用于HTML.

另外:"对象"表示法采用类ID:您只需要安装在系统上的ActiveX对象(或可通过Internet安装).你给出的Javascript示例有一个PROGID ...这需要1)已经安装了ActiveX对象,2)ActiveX对象必须有一个PROGID(ActiveX是可选的,不是必需的).