欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

使用JS操作页面表格,元素的一些技巧_基础知识

程序员文章站 2022-05-16 16:56:53
...
(一)
ie 、firefox以及其它浏览器对于 table 标签的操作都各不相同,在ie中不允许对table和tr的innerHTML赋值,使用js增加一个tr时,使用appendChile方法也不管用。下面是我就三种浏览器测试的结果:

insertRow

IE6 :支持,而且默认参数为-1,默认添加到最后

FireFox :支持,但部支持默认参数

Opera :支持,支持默认参数,默认添加到最前


AppendChild

IE6 :不支持

FireFox :支持,但增加TR后不影响ROWS

Opera :支持,效果同insertRow(-1),影响ROWS

最大限度的遵循规范,就能写出安全的、适用性强的代码了:

//向table追加一个空行:
var otr = otable.insertRow(-1);
var otd = document.createElement("td");
otd.innerHTML = " ";
otd.className = "XXXX";
otr.appendChild(otd);

这样就可以运行在这三种浏览器上了
(三)childNodes的操作
(1)属性nodeName
Utils.getChildrenByTagName = function (node, tagName) {
var ln = node.childNodes.length;
var arr = [];
for (var z = 0; z if (node.childNodes[z].nodeName == tagName) {
arr.push(node.childNodes[z]);
}
}
return arr;
};
(2)属性id
function getNodeID(parent, id) {
var ln = parent.childNodes.length;
for (var z = 0; z if (parent.childNodes[z].id == id) {
return parent.childNodes[z];
}
}
return null;
}
(3)属性className
对应class,如
function getElementsByClassName(node, className) {
var children = node.getElementsByTagName("*");
var elements = new Array();
for (var i = 0; i var child = children[i];
var classNames = child.className.split(" ");
for (var j = 0; j if (classNames[j] == className) {
elements.push(child);
break;
}
}
}
return elements;
}使用JS操作页面表格,元素的一些技巧_基础知识

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 使用JS操作页面表格,元素的一些技巧_基础知识
  • 专题推荐

    作者信息
    使用JS操作页面表格,元素的一些技巧_基础知识

    认证0级讲师

    推荐视频教程
  • 使用JS操作页面表格,元素的一些技巧_基础知识javascript初级视频教程
  • 使用JS操作页面表格,元素的一些技巧_基础知识jquery 基础视频教程
  • 视频教程分类