Variables 存储iframe';s变量中的元素(页面中已加载的元素,如<;table>;)
如何将iframe的元素存储到变量中 这是我希望在父母身上发生的事情 我知道元素应该有一个id来实现这个反复提出的解决方案,但它不起作用:Variables 存储iframe';s变量中的元素(页面中已加载的元素,如<;table>;),variables,iframe,element,parent,Variables,Iframe,Element,Parent,如何将iframe的元素存储到变量中 这是我希望在父母身上发生的事情 我知道元素应该有一个id来实现这个反复提出的解决方案,但它不起作用: var foo = document.getElementbyId([IFRAME ID]).contentWindow.document.getElementbyID([ELEMENT ID]); 该代码也不起作用: var foo = document.getElementbyId([IFRAME ID]).contentDocument.getEle
var foo = document.getElementbyId([IFRAME ID]).contentWindow.document.getElementbyID([ELEMENT ID]);
该代码也不起作用:
var foo = document.getElementbyId([IFRAME ID]).contentDocument.getElementbyID([ELEMENT ID]);
将每个部分保存到单独的变量中没有区别
i、 e
什么有效?请用jfiddle演示解决方案
谢谢
更新: 我尝试使用传入的iframe id运行此函数(在我的站点上,有一个自动存储塔页面加载到主iframe中,它本身有一个iframe,其id称为“albumcover”): 然后我收到了这条信息: [访问属性“href”的权限被拒绝] --100%的我的网站,所有引用的数据…一切,都在一个公共的html文件夹…相同的域,相同的托管服务区…的作品 到底发生了什么事
再次感谢。检查一下:我已经试过了。我所有的朋友都这么做了——从这里的帖子到其他地方。我尝试了不同的变量存储代码:“var innerDoc=(iframe.contentDocument)?iframe.contentDocument:iframe.contentWindow.document;”以及iframe页面函数try的父调用:“函数getElementWithinFrame(){return document.getElementById('copy-sheet-form');}然后像这样调用该函数来检索元素:var el=document.getElementById(“iframeId”).contentWindow.functionNameToCall();“现在我重新考虑了这一点,出于安全原因,访问iframe的内容并不总是可能的。事实上,我发给你的链接说:“重要的是:确保iframe在同一个域上,否则你无法访问其内部。这将是跨站点脚本。”当您尝试上面的实现时,是否会出现任何错误?我在本周早些时候读到了这一点——iframe中加载的实际页面与父页面(index.html)位于完全相同的目录中。没问题,那是什么。我想这些浏览器开发人员已经放弃了一些功能。
var x = document.getElementbyId([IFRAME ID]);
var y = (x.contentDocument || x.contentWindow.document);
var foo = y.getElementbyID([ELEMENT ID]);
function showIframeContent(id) {
var iframe = document.getElementById(id);
try {
var doc = (iframe.contentDocument)? iframe.contentDocument: iframe.contentWindow.document;
alert("The jukebox page's iframe URL is" +
doc.getElementById('albumcover').contentWindow.location.href);
}
catch(e) {
alert(e.message);
}
return false;
}