JavaScript控制台:无法通过XPath选择元素

时间:2014-02-20 19:59:32

标签: javascript xpath chromium

在任何YouTube视频页面(例如Gangnam Style)中,XPath无法访问某些元素。例如,我正在尝试访问“显示更多”按钮

enter image description here

从Inspect Window获取XPath

enter image description here

并使用此代码

btn=$x('//*[@id="widget_bounds"]/div[2]/div[4]/div[7]/div[3]/span[1]');

但我什么也没得到,或者更确切地说,是一个空列表:

enter image description here

我之前从未遇到过这个问题,他们是否使用某种混淆技巧来阻止该项被访问?

有办法解决它吗?

1 个答案:

答案 0 :(得分:1)

您要覆盖的内容位于页面上的iframe中。但问题是你无法访问内容,因为Same Origin Policy会阻止它。

document.getElementById("I0_1392927253257").contentWindow.document

SecurityError: Blocked a frame with origin "http://www.youtube.com" from accessing a cross-origin frame.

查看@sashoalm's link below以更改Chrome中iframe的上下文。