0
function STRover(el) {
    if (lastel != null) STRout(lastel);
    lastel = el;
    lastbg = el.style.backgroundColor;
    el.style.backgroundColor='316AC5';
    el.style.color='FFFFFF';
    el.style.cursor = 'default';
    for(x=0; x < el.childNodes.length; x++) {
        if ( el.hasChildNodes() ) {
            for(xx=0; xx < el.childNodes(x).childNodes.length; xx++) {
                if (el.childNodes(x).childNodes(xx).tagName=="A") {
                    el.childNodes(x).childNodes(xx).style.color="FFFFFF";
                }
            }          
        }
    }    
}

这会遍历表格中的每一行,更改每个单元格的背景和文本颜色。它在 chrome 中不起作用,我相信有更好/更简单的方法。

似乎在 chrome 中不支持 childNodes

未捕获的类型错误:对象 <HTMLTableRowElement> 的属性“childNodes”不是函数

有小费吗

PS:该应用程序不使用 jquery,因此首选非 jquery 解决方案。

4

1 回答 1

1

.childNodes在 chrome 中得到支持。

.childNodes返回一个数组。例如:

document.childNodes返回[<!DOCTYPE html>, <html>...</html>] document.childNodes[1]返回<html>..</html>

for(xx=0; xx < el.childNodes[x].childNodes.length; xx++) {
    if (el.childNodes[x].childNodes[xx].tagName=="A") {
        el.childNodes[x].childNodes[xx].style.color="FFFFFF";
    }
}
于 2013-06-03T01:56:24.047 回答