在新标签中打开iFrame链接?

时间:2014-11-21 15:07:38

标签: javascript jquery html iframe

我无休止地尝试在父标签或新标签中打开iframe链接但是我似乎无法让它们起作用。当我将链接设置为target =" _parent"链接什么都不做,当我设置链接到目标=" _blank"它们在新标签中打开但也没有显示任何内容。

一旦我摆脱了将目标添加到他们工作的链接但在iframe中打开的代码,这不是我想要完成的。任何帮助将不胜感激。

以下是我使用的iframe代码:

<iframe src="js/eventsFrame2.php?EventID=2422308" id="frameclass" frameborder="0" scrolling="no" width="100%" height="600">

以下是iframe中的代码:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
  function myFunction() {
    $("a").attr('target','_parent');

  }
$(window).load(myFunction);

</script>

<script language="javascript" type="text/javascript"> 
    document.write('<script language="javascript" src="http://tickettransaction.com/?bid=1761&amp;sitenumber=18&amp;tid=ticket_results&amp;evtid=2422308"><\/script>');
</script>

3 个答案:

答案 0 :(得分:0)

您是否尝试用您的内容覆盖父页面(包含iframe)?

iframe内的代码:

<script language="javascript" type="text/javascript"> 
    parent.document.write('<script src="http://tickettransaction.com/?bid=1761&amp;sitenumber=18&amp;tid=ticket_results&amp;evtid=2422308"><\/script>');
</script>

答案 1 :(得分:0)

查询定义了获取文档节点的contents()方法,但它没有为您提供跨文档到窗口的跨浏览器方式,因此您仍然坚持使用:

var iframea = $('iframe').contents().find("a");

iframea.attr('target','_parent');

重要提示:您应该始终检查文档是否处于状态&#34;完成&#34;与此工作

var iframe= document.getElementById('iframe_id');
//var iframewindow= iframe.contentWindow
//? iframe.contentWindow : iframe.contentDocument.defaultView;
var preview =  previewFrame.contentDocument ||  previewFrame.contentWindow.document;
if (preview.readyState=="complete")
{
   //ok
}
else
{
   //perform a recursive call until it is complete
}

答案 2 :(得分:0)

如果您可以控制iframe中的内容,可以尝试使用base标记。

示例 - 在加载到iframe中的页面中包含头部内的基本标记:

<base target="_top"/>