当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JS 动态获取节点代码innerHTML分析 [IE,FF]

Javascript
javascript 多图浏览超炫效果
对采用动态原型方式无法展示继承机制得思考
JS 控制非法字符的输入代码
JSON 编辑器实现代码
jquery select操作的日期联动实现代码
select列表内容交换的js实现代码
javascript Demo模态窗口
JavaScript 加号(+)运算符号
javascript 动态生成私有变量访问器
javascript 模拟JQuery的Ready方法实现并出现的问题
jquery ready函数源代码研究
ASP Json Parser修正版
js select多选列表传值代码
JavaScript 对象模型 执行模型
js 操作select相关方法函数
IE和firefox浏览器的event事件兼容性汇总
js event事件的传递与冒泡处理
兼容IE,firefox的获取节点的文本值的javascript代码
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
javascript Array.sort() 跨浏览器下需要考虑的问题

Javascript 中的 JS 动态获取节点代码innerHTML分析 [IE,FF]


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

在IE 环境下 赋值类型为对象时 innerHTML 获取不到其改变,在FireFox环境下 .属性 方式获取不到其改变。 <div id="parentnode">
<span id="childnode">child</span>
</div>
<script type="text/javascript">
var childNode = document.getElementById("childnode") , parentNode = document.getElementById("parentnode");
</script>
当为子节点添加默认属性时:
childNode.className = "childClass"; 或: childNode.className = new String("childClass");
parentNode.innerHTML IE,FF都能获得 [ <span class="childClass" id="childnode">child</span> ]
当为子节点添加私有属性时:
childNode.type = "childType";
parentNode.innerHTML 当且仅当 IE能获得 [ <span type="childType" id="childnode">child</span> ]
childNode.type = new String("childType"); //Object对象
parentNode.innerHTML IE,FF都不能获得 [ <span id="childnode">child</span> ]
childNode.setAttribute("type","childType");
parentNode.innerHTML IE,FF都能获得 [ <span class="childClass" id="childnode">child</span> ]
childNode.setAttribute("type", new String("childType"));
parentNode.innerHTML 当且仅当 FF能获得 [ <span class="childClass" id="childnode">child</span> ]
当对元素动态添加私有属性后获取innerHTML,如果采用.属性 方式赋值,无论哪种数据类型FireFox都不能获得,如果当赋值的类型是个对象的话IE不能通过innerHTML获得。
如果使用setAttribute方法赋值时,无论哪种数据类型FireFox都能获取,如果当赋值的类型是个对象的话IE不能获取 。
总结:在IE 环境下 赋值类型为对象时 innerHTML 获取不到其改变,在FireFox环境下 .属性 方式获取不到其改变。