我有一个动态创建的iFrame,可通过以下方式自动加载其HTML:
var newFrame = document.createElement('frame');
newFrame.id = theId;
newFrame.width = "200";
newFrame.height = "200";
newFrame.style.width = "200px";
newFrame.style.height = "200px";
newFrame.src = 'data:text/html;charset=utf-8,' + encodeURI('<script type="text/javascript>var $ = parent.$;</script>' + data);
$('#menuContent').append(newFrame);
但是,在页面上,iFrame的
width
和height
都呈现为0。iFrame内部的内容已正确加载(通过开发工具可以看到)。我做错了什么吗?
这是已加载的iFrame的图片:
最佳答案
您正在创建一个frame
元素,该元素只能在frameset
元素内使用,并且缺少width
和heigh
属性。请改用iframe
元素,即将第一条语句更改为
var newFrame = document.createElement('iframe');
关于html - 动态创建的iFrame,宽度为0,高度为0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23988209/