如何在javascript中使用document.getElementByid更改iframe的宽度/高度?
我尝试使用document.getElementByIdframe-id,但似乎有问题。大多数情况下,它返回undefined或null,但有时它仅在第一次调用它时返回iframe,然后再次开始返回undefined。此外,我无法使用document.getElementByIdframe-id.style.width更改或获取样式属性。这是你可以用控制台检查的小提琴如何在javascript中使用document.getElementByid更改iframe的宽度/高度?,javascript,html,css,iframe,Javascript,Html,Css,Iframe,我尝试使用document.getElementByIdframe-id,但似乎有问题。大多数情况下,它返回undefined或null,但有时它仅在第一次调用它时返回iframe,然后再次开始返回undefined。此外,我无法使用document.getElementByIdframe-id.style.width更改或获取样式属性。这是你可以用控制台检查的小提琴 为什么在javascript中iframe元素不能与document.getElementByid或document.getEl
为什么在javascript中iframe元素不能与document.getElementByid或document.getElementsByClassName一起访问?它们是。除了window.postMessage之外,您不能在iframe中使用javascript执行任何操作,但是元素选择与javascript中的任何其他选择器一样工作 添加
console.log(document.getElementById("frame-id"));
你的工作应该很完美。你发布的代码中可能存在重复的代码,但iframe标记中没有id=frame id。你确定在DOM中声明iframe html标记后会执行javascript代码吗?@Pierfrancesco我只在控制台窗口中使用javascript,在页面完全加载一段时间后。你知道吗可以使用控制台进行检查-不是在JS FIDLE时,因为包含文档的框架不是顶级框架,所以文档将是错误的文档。console.logdocument.getElementByIdframe-id;返回未定义的。您是在您的站点上运行还是在代码段中运行?我尝试了这两种方法。我使用了html文件和控制台窗口中的所有内容。在这个JSFIDLE上也没有发生任何事情。请注意,您不能在JSFIDLE上的控制台中运行javascript。JSFIDLE内容被放入iframe中,您将遇到安全限制。