我在Linux上使用Chrome 34.0.1847.116,如果只是加载polymer.js,则document.evaluate不再有效,并返回奇怪的错误:
"错误:无法执行'评估' on' Document':提供的上下文节点为null。 在错误(本机)
这是一个例子
http://jsbin.com/jadir/2/edit?html,console,output
除非我另有说明,否则我会创建一个问题,但发布此处以防有人有一些见解。
答案 0 :(得分:2)
如果您针对ShadowDOM Polyfill提交了错误,那将会很有帮助。
Fwiw,您可以通过展开 div来使您的示例正常工作,然后再发送给评估,如下所示:
document.evaluate('span', unwrap(div));
...但这是一种解决方法,会导致其他问题。例如,在大多数情况下(wrap(node)
),在使用之前,您从结果中提取的任何节点都需要包装。