如果点击其中的任何链接,为什么iframe的src属性没有变化?

时间:2018-06-05 03:19:35

标签: html browser

在以下代码中,iframe的 src 属性始终在devtools insepct中显示b.html,即使点击了 b.html 页面中的链接

的index.html



<html>
  <body>
   <iframe src="b.html">
   </iframe>
  </body>
</html>
&#13;
&#13;
&#13;

b.html

&#13;
&#13;
<html>
  <body>
   <a href="d.html">link</a>
  </body>
</html>
&#13;
&#13;
&#13;

d.html

&#13;
&#13;
<html>
</html>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:3)

规范似乎没有解释为什么会出现这种情况,除了声明WindowProxy独立于元素本身(为了它的价值)。它确实确认这是预期的行为(W3C HTML5WHATWG HTML):

  

如果用户离开此页面,iframe对应的WindowProxy对象将为新Window个对象代理新Document个对象,但{{1 }}属性不会改变。

答案 1 :(得分:0)

@BoltClock said一样,iframe的src=属性不变,但是您可以通过访问iframe的属性来获取iframe的新网址

 document.getElementById('my-iframe').contentWindow.location.href

但是您的iframe必须与托管它的页面位于同一域中。