【问题标题】:Html and iFramesHtml 和 iFrame
【发布时间】:2012-12-17 17:20:08
【问题描述】:

好的,问题是当您单击左侧 iframe 中的链接时,我希望它在右侧 iframe 中打开。当您第一次单击左侧边栏中的链接时,这一切都很好。但是,当您第二次单击该链接(在左侧边栏中)时,它将在新的浏览器选项卡中打开。我怎样才能让它在正确的框架中不断打开?。

提前致谢, 和平

index.html http://pastebin.com/u6DqDA1q

left_frame.html http://pastebin.com/UuZYtdYs

【问题讨论】:

  • 如果以下任何答案都可以解决您的问题,请点击他们答案旁边的复选标记来接受他们的答案。这将有助于未来的用户搜索相同问题的答案。谢谢。

标签: html css iframe frames


【解决方案1】:

是的,它应该可以正常工作,iframe 1 中的链接需要目标等于目标 iframe 的名称。

例如:

iframe 1

<iframe src=""></iframe>

目标 iframe

<iframe name="iframe2"></iframe>

iframe 1 的内容

<a href="" target="iframe2">Link opens in iframe 2</a>

同时检查我找到的这个链接

http://www.trans4mind.com/personal_development/HTMLGuide/iframes3.htm

【讨论】:

  • 没错,这可行,但如果您第二次单击该链接,它将在新的浏览器选项卡中打开(顺便说一下,唯一不这样做的浏览器是 Mozilla Firefox)
  • 我在 chrome 上对其进行了测试,第二次单击时它不会在新窗口中打开。但是,如果这种方法在 moz 上不起作用(尚未检查),您可能不得不求助于 js 解决方案。
  • 在您的代码中:last.fm/music/The+Beatles/Abbey+Road" target="_parent" name="right_frame">Abbey Road 链接需要将目标设置为 right_frame 而不是名称!您的目标设置为父级,我相信仅在您的祖父母框架集中使用。修复并重试,也许它仍然有效?
【解决方案2】:

您是否考虑过使用 AJAX 为另一方填充 div?这也有助于平台兼容性

<div id="left-side"></div>
<div id="right-side"></div>

left.html

<a onclick="OpenToRightSide('some-url')">some url text</a>

在主html父文件中

function OpenToRightSide(url)
{
    var xmlhttp;
    if (window.XMLHttpRequest)xmlhttp=new XMLHttpRequest();
    else xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp.open("GET",url,true);
    xmlhttp.send(); 
    xmlhttp.onreadystatechange=function()
    {
        document.getElementById("right-side").innerHTML=xmlhttp.responseText;
    }
}

【讨论】:

  • 感谢您的反馈,但我真的需要这个来使用 iFrame。我知道这不是一个好方法,但我想为 iFrame 找到一个可行的解决方案。谢谢
  • @Peacy 真的不觉得答案值得-1。这是一个正确的答案,只是不适用于您的具体情况,这只是另一种方式的建议。但与此同时,我会尝试使用 iFrame 为您开发另一种解决方案。
  • 非常感谢您的回答,我愿意接受任何建议,但我没有给您那个-1,当我阅读评论时它已经存在了。感谢您在这方面的努力,给了它一个 +1,所以现在它等于 0
  • @Peacy Ahh,很抱歉造成误解……不用担心。我正在为您制定解决方案。
  • @Peacy 请问您为什么使用 iFrames 而不是其他方法?我不确定 index.html 的元素是否可以从 left-side.html 访问,因为它们被浏览器视为两个单独的页面(我相信)。而且我认为target="_Parent" 只告诉窗口(选项卡)打开元素。
【解决方案3】:

我得出相同的结论,即第二次单击该链接时它不起作用。我不确定问题是什么,但这里是 2 个文件的代码,基于 user1721135 的建议。 http://pastebin.com/B2F2XseHhttp://pastebin.com/6nZBXEU1

【讨论】:

  • 这似乎没有回答原来的问题。
猜你喜欢
  • 2011-12-14
  • 2011-07-21
  • 1970-01-01
  • 1970-01-01
  • 2013-09-26
  • 2018-05-01
  • 1970-01-01
  • 2012-10-05
  • 1970-01-01
相关资源
最近更新 更多