【问题标题】:Remove target inside iframe删除 iframe 内的目标
【发布时间】:2014-01-19 22:17:13
【问题描述】:

我在 iframe 中有一个网站,外部文档中的链接确实有一个 target="_top" 属性。因此,如果我单击其中一个,整个页面就会“跳出”我的 iframe。 有没有办法在不接触外部网站的情况下删除它们?

我想过类似的事情

$('a[target="_top"]').removeAttr('target');

但它不会改变 iframe 内的任何内容(如果我可以避免使用 jQuery,我会很高兴)。

提前致谢!

【问题讨论】:

  • 您是否尝试使用 JavaScript 更改您在 iframe 中托管的第三方网站上的内容?如果是这样,你不会有太多的运气。
  • 唯一接近您所要求的是 iframe 的沙箱属性,目前并非所有浏览器都支持该属性
  • 我这样做是为了公平,正常的网站会在顶部显示额外的导航。所以我不会碰原始代码,因为它会搞砸原始代码(不值得进行为期 4 天的展会)......
  • 浏览器支持不是问题,它应该只在一台电脑上工作,我可以根据需要进行设置

标签: javascript iframe target


【解决方案1】:

鉴于浏览器兼容性不是问题...

<iframe src="http://www.example.com" sandbox="allow-scripts allow-forms"></iframe>

... 将阻止 iframe 导航父文档。

可以在此处找到有关浏览器支持的实际信息... http://caniuse.com/#feat=iframe-sandbox

【讨论】:

  • 我喜欢这个想法,但如果我尝试这个,我将无法再打开链接 - 它们的反应就像纯文本一样。可能是原始网站的问题...感谢您的提示!
猜你喜欢
  • 2011-11-09
  • 2017-04-22
  • 1970-01-01
  • 1970-01-01
  • 2013-08-31
  • 1970-01-01
  • 2010-11-21
  • 1970-01-01
  • 2018-06-28
相关资源
最近更新 更多