获取具有跨域的iframe内的元素的CSS属性

时间:2017-01-05 17:11:48

标签: javascript jquery css iframe cross-domain

我试图在此iframe中获取.av-video-player-bg的背景图片的网址:

<iframe src="http://www.gamespot.com/videos/embed/6425430/"></iframe>

我已经尝试了

$("iframe").contents().find('.av-video-player-bg').css('background-image');

但是我收到了这个错误:

  

无法阅读&#39; contentDocument&#39;属性来自&#39; HTMLIFrameElement&#39;:阻止了一个有起源的框架&#34; http://www.gamespot.com&#34;从访问跨源框架。

1 个答案:

答案 0 :(得分:4)

如果iframe的域名与父页面的域名不同,则由于原始政策相同,您将无法操纵其内容或获取相关信息

如果他们拥有不同的域,但您可以控制其内容(也就是说,您可以向其中添加代码),则可以使用Postmessaging执行您要执行的操作。只需在iframe的内容中添加一个监听器,告诉它何时触发此更改。

从观看域名(gamespot)我想象这不是你的页面,所以你无法做很多事情