当前位置: 首页 > 面试题库 >

从iframe访问父网址

强才捷
2023-03-14
问题内容

好的,我有一个页面,在此页面上有一个iframe。我需要做的是在iframe页面上,找出主页的URL。

我进行了搜索,我知道如果我的iframe页面位于其他域上是不可能的,因为这是跨站点脚本。但是,我读过的所有内容都说,如果iframe页面与父页面位于同一域中,那么例如,它应该可以工作:

parent.document.location



parent.window.document.location



parent.window.location



parent.document.location.href

…或其他类似的组合,因为似乎有多种获取相同信息的方法。

无论如何,这就是问题所在。我的iframe与主页位于同一域中,但不在同一SUB域中。例如,我有

http:// www.mysite.com/pageA.html

然后我的iframe网址是

http:// qa-www.mysite.com/pageB.html

当我尝试从pageB.html(iframe页面)获取URL时,我不断收到相同的访问被拒绝错误。这样看来,即使子域也算作跨站点脚本,这是正确的,还是我做错了什么?


问题答案:

没错
使用iframe时,子域仍被视为单独的域。可以使用传递消息postMessage(...),但是故意使其他JS API无法访问。

仍然可以根据上下文获取URL。有关更多详细信息,请参见其他答案。



 类似资料:
  • 问题内容: 我有一个可以打电话的页面。在此页面中,我有一个带有提交表单的表单,除此之外,我还有一个ID为“ target”的div。是否可以在iframe中提交表单,并在成功刷新后刷新目标div。是说要在其中加载新页面? 编辑:目标div在父页面中,所以我的问题基本上是,是否可以在iframe之外向父对象进行jQuery调用的示例。那看起来如何? 编辑2:这就是我的jquery代码现在的样子。它位

  • 我正在开发一个chrome扩展,遇到了一个大问题。 奇怪的是,我可以访问iframe的html。因此,这段代码在chrome扩展中可以完美地工作: 我尝试将“all_frames”:true放入清单文件中,但没有成功:(

  • 问题内容: 我有一个iframe,为了访问父元素,我实现了以下代码: 如何使用jQuery获得相同的结果? 更新 :或如何使用jquery访问iFrame父页面? 问题答案: 要在iFrame的父项中查找,请使用: $()包装器的第二个参数是要在其中搜索的上下文。默认为文档。

  • 问题内容: 我该如何继承其父代的样式和javascript。 我努力了 但是,它会删除标签。此外,我看不到影响iframe的样式。 我是否有更好/其他的方法来解决这个问题?谢谢。 问题答案: 您可以通过在iframe中使用以下代码来“继承”父级的CSS: 在IE,Chrome和Firefox中对我来说效果很好。 关于JavaScript,我找不到直接将父JavaScript添加到iframe中的方

  • 我有一个iframe,里面有一个小部件。源来自不同的域。在其内容上有一个带有提交按钮的表单。单击时,打开的页面位于iframe内。我的问题,我已经研究过了,但还没有找到答案,是这样的——“有没有办法让我可以访问那个按钮,这样新的页面就可以在一个单独的窗口中打开?” 谢谢你能提供的任何帮助。Stackoverflow规则。

  • 在过去的5天里,我一直在寻找拖放的有效解决方案。所以, Selenium. WebDriver 2.44.0 网络驱动程序。ChromeDriver。win32 2.13.0.0 Chrome最新版本。 C#,页面对象模式。抱歉屏幕上出现俄文描述:) 我们有. net cms。它有页面编辑器。编辑器在父页面中打开,如果从同一域加载到iframe中,则要编辑的页面。 我需要拖动'n'放置项目(图片,