我有一个iframe,其中包含一个带有div的页面,我用它来加载一些图形。遗憾的是IE不会找到功能document.getElementById的div,但是firefox会没有问题。有什么提示吗?感谢
<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>
答案 0 :(得分:2)
我认为你需要获得这样的元素,因为它实际上是一个单独窗口的一部分。
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。