1

这行得通……</p>

<a href="page.html" target="frameName">Link text</a>

但这不是……</p>

<script type="text/javascript">
    window.onload = function() {
      var a = document.getElementById("mylink");
      a.onclick = function() {
        parent.document.getElementById('frameName').src = 'page.html';
      }
    }
</script>

<a id="mylink" href="page.html">LINK</a>

知道为什么我不能通过 id 从一个 iFrame 到另一个 iFrame 获取元素吗?我也知道很少的代码,所以如果很明显,我提前道歉。

4

1 回答 1

0

首先,我会确保 IFrame 中网站的安全性允许您执行此类操作。查看此链接: 克服“X-Frame-Options 禁止显示”

接下来,我会担心你的锚标签的目标。指定它将默认为self。在您的第二段代码中,目标将是 _self。因此,当您单击链接时,您的 javascript 将要更改 IFrame 的源,而链接将要更改整个页面。我会选择链接的 JS 或 HTML 实现,而不是两者。这是我放在一起展示的一种在没有实际锚标记的情况下更改 iFrame 的方法。

<html>
<body>

<iframe id="frameName" src="page.html"></iframe>
<button onclick="changeFrame()">LINK</button>
<script>
    function changeFrame() {
          document.getElementById('frameName').src ='page2.html';
      }
</script>


</body>
</html>
于 2013-03-07T05:16:04.800 回答