1

我正在寻找一种方法来访问 IFRAME 上页面的只读属性。具体来说,我想阅读选择。显然我无法阅读它,因为该文档位于另一个域中。

有没有办法阅读它们?

4

2 回答 2

1

我过去曾使用 document.domain 来解决此问题。但是,您只能使用它,它的 iframe 和外部页面共享同一个域,即 www.example.com 和 ifrm.example.com。我还听说过一种叫做 JSONP 的东西,即使没有共享域,它也显然可以解决这个问题。Mmany Google API 使用这个。

于 2009-07-08T18:52:17.363 回答
1

您的浏览器不允许您访问其他域中的任何内容。你不走运。

就 JSONP 而言,这是解决跨域问题的一种方法。简而言之,它的工作方式是向它传递一个 javascript 函数名称和一些请求,然后它返回一个包装在函数中的 json 对象,例如:

myfunction({some:"crazy", "object":2});

当你提出这个请求时,你将它的响应粘贴到一个脚本标签中,然后在加载时执行,调用你的“myFunction”,它必须存在于你身边。

这仅在服务器支持 JSONP 时才有效。如果它返回纯 JSON,那么你不能在 javascript 中使用它。

于 2009-07-08T19:04:04.940 回答