我需要从Firefox扩展程序的叠加层(iframe中的iframe中的iframe)中以任意数量的级别访问嵌套的iframe。叠加层从iframe接收事件,但DOM访问器方法返回nil。
function resizeIframe(evt){
var iframeHeight = evt.target.getAttribute("height");
var frame_id = evt.target.getAttribute("frame_id");
var ifr = content.document.getElementById('ifrm'+frame_id);//returns nil
ifr.style.height = iframeHeight+'px';
}
我正在寻找一种强有力的方法来做到这一点,但我会对在这一点上有用的任何事情感到高兴。谢谢!
答案 0 :(得分:1)
使用window.frameElement
property:
var ifr = evt.target.ownerDocument.defaultView.frameElement;
答案 1 :(得分:1)
从Firefox 34
开始,我们可以将开发人员工具指向文档中的特定iframe。
有关Mozilla提供的访问嵌套iframe的扩展程序的详细说明,请参阅此Mozilla Developer Guide。