JavaScript querySelectorAll

时间:2011-03-01 07:07:20

标签: javascript

我正在处理的教程包含以下代码,其中包含以下注释。我不明白......

i)评论,特别是为什么它说“所有第二个表格单元格”。 “第二”是什么意思?这不是正确的英语

ii)什么时候它正在寻找td + td?该程序是关于从表中获取数据的,因此td + td会在html表标记<td></td>之间选择任何内容吗?

//use querySelector to find all second table cells
var cells = document.querySelectorAll("td + td");

2 个答案:

答案 0 :(得分:5)

它只查找<td>之前有<td>http://www.w3.org/TR/CSS2/selector.html#adjacent-selectors)的内容。

因此,使用此HTML,它将匹配<td>的2-4(含):

<table>
    <tr>
        <td>Cell 1</td>
        <td>Cell 2</td>
        <td>Cell 3</td>
        <td>Cell 4</td>
    </tr>
</table>

此处的示例:http://jsfiddle.net/tMrbA/

答案 1 :(得分:1)

如果你有一个选择器foo + bar,它会搜索一个元素foo,然后选择所有匹配bar的元素,这些元素是foo之后的兄弟姐妹,并且具有相同的元素父母为foo