javascript - 如何获取 iframe 的父 div 的 ID?

标签 javascript iframe

我有一个看起来像这样的页面:

 <div class="myclass" id="div1"><iframe id="frame1" src="myiframe.html"></div>
 <div class="myclass" id="div2"><iframe id="frame2" src="myiframe.html"></div>

在我的 iframe 中,我需要知道其父节点的 div 的 id,但我不知道如何获取。 我搜索了一个没有 jquery 的解决方案,但我发现的只是一些带有 getElementById 的东西,我实际上是在搜索 id。

有人可以帮助我吗?

最佳答案

你要知道,就你在iFrame里面的JS代码而言,窗口就是iFrame,文档就是iFrame的内容。为了父文档,这里有一个应该适合你的小函数:

var parentDoc = window;
while(parentDoc !== parentDoc.parent)
{
    parentDoc = parentDoc.parent;
}
parentDoc = parentDoc.document;
var iFrames = parentDoc.getElementsByTagName('iframe');
var divs = [];
for(var i=0;i<iFrames.length;i++)
{
    divs.push(iFrames[i].parentNode);//assuming the first parent is the div
}

这应该可以解决问题

关于javascript - 如何获取 iframe 的父 div 的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12350375/

相关文章:

javascript - 在 node.js 中使用 jQuery

javascript - 我尝试动态更改 iframe 的 url,但收到错误 : Unsafe value used in resource URL

javascript - Firefox XPCOM 有 JSDoc 文件吗?

javascript - 我的元素显示在不同窗口大小的不同位置。如何定位?

javascript - 在 iframe 中打开一个 asp.net 页面

javascript - 无法 iframe 我网站的某些页面

javascript - 使用 javascript 通过标题获取 iframe

jquery - 如何使用 jquery 循环 iframe?

javascript - 使用按钮计算表单的值

javascript - Class Cast : java. lang.String 无法转换为 org.mozilla.javascript.Scriptable