我尝试解析这个页面上的颜色名称:http://www.google.com/design/spec/style/color.html#
使用以下代码:
var all = document.querySelectorAll(".color-group");
for(var i=0; i<all.length; i++){
var e = all[i];
var name = e.querySelector('span.name');
console.debug(name.innerHTML);
}
然而,打印的结果总是“undefined”。 然而,稍作修改后的代码可以正常工作:
var all = document.querySelectorAll(".color-group");
for(var i=0; i<all.length; i++){
var e = all[i];
var name = e.querySelector('span.name').innerHTML;
console.debug(name);
}
唯一的区别是我直接访问
querySelector
的结果,而不是通过name
变量访问。我尝试在Chrome、Safari和Firefox中运行,它们都没有返回颜色名称。但是IE这次却做对了。
这是一个普遍的bug或特性问题,还是网站的问题?