IE iframe 与 getElementById 的问题

发布于 2024-12-03 12:21:36 字数 424 浏览 1 评论 0原文

我有一个 iframe,其中包含一个带有 div 的页面,我用它来加载一些图表。遗憾的是,IE 无法使用 document.getElementById 函数找到 div,但 Firefox 可以毫无问题地找到该 div。有什么提示吗?谢谢

<iframe id="ganttFrame" src="data.html">

data.html:

<div class="gantt" id="GanttChartDIV"></div>
<script>    
  var g = new JSGantt.GanttChart('g',document.getElementById('GanttChartDIV'), 'day');
</script>

i have an iframe which contains a page with a div that i use to load some graphs. Sadly IE wont find the div with the function document.getElementById, but firefox will do without problem. Any hint whats going on? Thanks

<iframe id="ganttFrame" src="data.html">

data.html:

<div class="gantt" id="GanttChartDIV"></div>
<script>    
  var g = new JSGantt.GanttChart('g',document.getElementById('GanttChartDIV'), 'day');
</script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橙味迷妹 2024-12-10 12:21:37

我认为您需要获取这样的元素,因为它实际上是单独窗口的一部分。

document.getElementById('ganttFrame').document.getElementById('GanttChartDIV')
//                       ^^^get the iframe's document... the the ^^^^

或者您可以使用(如果您的 iframe 的 name 属性设置为 ganttFrame):

window.frames['ganttFrame'].document.getElementById('GanttChartDIV')

理论上,每个 iframe可能 包含完全相同的 ID,因为它是一个单独的文档,因此要正确导航到它,您需要获取 iframe,然后在该“窗口”中获取子 div。

I think you need to get the element like this since it is actually part of a separate window.

document.getElementById('ganttFrame').document.getElementById('GanttChartDIV')
//                       ^^^get the iframe's document... the the ^^^^

or you could use (if your iframe has a name attribute set to ganttFrame):

window.frames['ganttFrame'].document.getElementById('GanttChartDIV')

In theory, each iframe could contain exact duplicate ID's because it is a separate document, thus to navigate to it properly, you'll need to get the iframe, then in that "window" get the child div.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文