我必须在具有一些链接的 iframe 中加载外部服务器 URL,当用户单击链接时,它会在 iframe 外部打开。但我想在同一个 iframe 中打开它。
这怎么可能?
您应该指定 iframe 的目标名称。
<iframe src="demo_iframe.htm" name="iframe_a"></iframe>
<p><a href="http://www.w3schools.com" target="iframe_a">www.google.com</a></p>
默认情况下,在 iframe 中加载的文档中的链接将在同一框架中打开。
如果文档覆盖了默认行为(例如使用target="_top"
),那么文档将加载到其他地方。
如果包含框架的文档来自“外部服务器”,则无法更改包含框架的文档的行为(加载到框架中的文档),因为安全限制会阻止与来自其他来源的文档的 DOM 交互。
签出超链接上的 _target 属性:http: //www.w3schools.com/tags/att_a_target.asp你想要“_self”,例如
<a href="#" target="_self">link</a>
您不能影响具有不同域源的 iframe。
如果它在同一个域中,您可以使用 javascript 删除目标空白,但由于它在不同的域中,您对 html 没有影响。
希望这有助于并为您节省无数小时尝试不可能的事情。
您需要target=_self
像这样在链接中设置属性:
<a href="http://google.com/" target="_self">Google</a>
但如果您正在加载外部网站,您可能无法控制这一点。