Javascript Iframe未在正确的位置创建

Javascript Iframe未在正确的位置创建,javascript,Javascript,我正在将iframe加载到页面上的div中。如果我使用它,它工作得很好: <iframe src="http://myURL.com/embed/whatever/1213" id="frameID" frameBorder="0" width="100%" style="overflow:hidden"></iframe> <script> window.addEventListener( "message", function (e

我正在将iframe加载到页面上的div中。如果我使用它,它工作得很好:

<iframe src="http://myURL.com/embed/whatever/1213" id="frameID" frameBorder="0" width="100%" style="overflow:hidden"></iframe>
<script>
    window.addEventListener( "message",
        function (e) {
            var frameHeight = e.data.height;
            document.getElementById('frameID').height=frameHeight + "px";
        },
        false
    );
</script>

window.addEventListener(“消息”,
职能(e){
var frameHeight=e.data.height;
document.getElementById('frameID')。高度=frameHeight+“px”;
},
假的
);
但是,我更喜欢一个完整的javascript解决方案,所以我使用以下内容,但它在页面末尾加载iframe,而不是像上面那样在div中加载

<script>
    var iframe = document.createElement('iframe');       
    document.body.appendChild(iframe);
    iframe.src = 'http://myURL.com/embed/whatever/1213';       
    iframe.width = '100%';
    iframe.id = 'frameID';
    iframe.frameBorder = '0';
    iframe.style = 'overflow:hidden';
    window.addEventListener( "message",
        function (e) {
           var frameHeight = e.data.height;
           alert(frameHeight);
           document.getElementById('frameID').height=frameHeight + "px";         
        },
        false
    );
</script>

var iframe=document.createElement('iframe');
document.body.appendChild(iframe);
iframe.src=http://myURL.com/embed/whatever/1213';       
iframe.width='100%';
iframe.id='frameID';
iframe.frameBorder='0';
iframe.style='溢出:隐藏';
window.addEventListener(“消息”,
职能(e){
var frameHeight=e.data.height;
警报(帧高度);
document.getElementById('frameID')。高度=frameHeight+“px”;
},
假的
);

它为什么会这样做?

通过使用
document.body.appendChild()
您将其作为
body
的子对象进行附加

div是否具有id属性?如果您可以使用:

document.getElementById('id-of-div').appendChild(iframe);

这有帮助吗?

我只是想做同样的事情-不,没有办法知道容器ID或类,因为它甚至可以添加到博客文章中。我想我们必须使用方法A。谢谢你的回复