当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 在IE下获取object(ActiveX)的Param的代码

Javascript
jQuery chili图片远处放大插件
Aptana调试javascript图解教程
JS 动态获取节点代码innerHTML分析 [IE,FF]
jquery 分页控件实现代码
Ruffy javascript 学习笔记
JavaScript 学习笔记 Black.Caffeine 09.11.28
Jquery 快速构建可拖曳的购物车DragDrop
js 变量类型转换常用函数与代码[比较全]
JavaScript 直接操作本地文件的实现代码
兼容IE与Firefox的js 复制代码
让FireFox支持innerText的实现代码
js 表格隔行颜色
Jquery选择器 $实现原理
JS类的封装及实现代码
用Javascript检查Adobe PDF插件是否安装的实现代码
鼠标拖动动态改变表格的宽度的js脚本 兼容ie/firefox
JavaScript Object的extend是一个常用的功能
JavaScript 报表展示实现代码
两种WEB下的模态对话框 (asp.net或js的分别实现)
checkbox全选/取消全选以及checkbox遍历jQuery实现代码

Javascript 中的 在IE下获取object(ActiveX)的Param的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 304 ::
收藏到网摘: n/a

在IE下,获取Param的时候有个诡异现象(不知道算不算bug)。 为了清晰起见,下面用最简单的HTML和JavaScript来说明。有这么一段HTML(head部分是标准的head,doctype使用xhtml-transitional的DTD):
复制代码 代码如下:

<body>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="100%" height="100%">
<param name="movie" value="Test.swf" />
<param name="quality" value="high" />
<embed src="Test.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="100%" height="100%"></embed>
</object>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="100%" height="100%">
<param name="movie" value="Test.swf" />
<param name="quality" value="high" />
<embed src="Test.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="100%" height="100%"></embed>
</body>
</object>

现在,我们分别用两种方式来获取第一个object(swf)的param参数个数:
复制代码 代码如下:

var o = document.getElementsByTagName('object')[0];
alert(o.getElementsByTagName('param').length);
alert(o.childNodes.length);

猜猜结果分别是什么?还有,再猜猜o.innerHTML是什么?大家可以自己试试。上面的结果分别是4和2,是不是很诡异?