我正在寻找选择每行中的最后一个td,并立即使用此CSS选择器.table td:last-child,但它在IE中不起作用,所以有什么办法可以通过javascript(不包含任何框架)为IE选择吗?应用CSS样式。

最佳答案

var rows = document.getElementById('tester').rows;

for(var i = 0, len = rows.length; i < len; i++) {
    rows[ i ].lastChild.style.background = 'orange';
}

示例: http://jsfiddle.net/JsyYR/

编辑:如果将在所有浏览器中运行它,这样做可能更安全:
var rows = document.getElementById('tester').rows;

for(var i = 0, len = rows.length; i < len; i++) {
    rows[ i ].cells[ rows[ i ].cells.length - 1 ].style.background = 'orange';
}

示例: http://jsfiddle.net/JsyYR/2/

这是因为如果最后一个</td>和结尾</tr>之间有空格,则某些浏览器会插入一个文本节点。因此,lastChild不起作用。

关于javascript - CSS:javascript中的最后一个选择器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4185596/

10-16 13:01