Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript innerHTML不';t填充父对象_Javascript_Html_Dom_Innerhtml - Fatal编程技术网

Javascript innerHTML不';t填充父对象

Javascript innerHTML不';t填充父对象,javascript,html,dom,innerhtml,Javascript,Html,Dom,Innerhtml,我试图在一个div中加载一个html页面。它工作得很好,只是“加载”页面只填充了父页面的一小部分 这是加载HTML的函数: function load_inner() { Content.innerHTML='<object type="text/html" data="page_test.html"></object>'; } 如果我向目标页面发送GET请求并将innerHTML设置为“responseText”,它将正确显示: function load_

我试图在一个div中加载一个html页面。它工作得很好,只是“加载”页面只填充了父页面的一小部分

这是加载HTML的函数:

function load_inner() {
    Content.innerHTML='<object type="text/html" data="page_test.html"></object>';
}

如果我向目标页面发送GET请求并将innerHTML设置为“responseText”,它将正确显示:

function load_home() {         
     var url = "http://localhost/inner_load/page_test.html";
     var method = "GET";
     var async = true;
     var request = new XMLHttpRequest();
     request.onload = function () {
        var data = request.responseText;
        Content.innerHTML=request.responseText;
     }
     request.open(method, url, async);
     request.send();
  }


对象标记有什么问题,如何解决?提前谢谢

如果将对象的宽度设置为100%,则100%反映的是父div(橙色)的宽度,而不是加载的内容-因此,将1000px div加载到500px(父div的100%)对象标记中。如果不希望滚动条,则需要将对象的大小调整为与加载到其中的内容相同的大小,即1000px。因此,答案是object标记没有问题

例如:

  <div id="content"> //500px
    <object> //at 100% it is also 500px
       <div>Loaded content</div> //this is 1000px and hence the scrollbar on a parent object
    </object>
</div>
//500px
//在100%时,它也是500px
已加载内容//这是1000px,因此是父对象上的滚动条

您是否尝试将对象标记的样式设置为100%?您没有显示任何包含
标记的HTML。这让我感到困惑。@bensonsearch是的,我做了:
注意:我可以将对象标记设置为父对象的100%w&h(通过css),并且它会完全填充,但这些滚动条仍然显示。
@jfriend00它是在javascript函数
load_inner()
中设置的,它在山顶page@arielnmz同时将对象的溢出设置为隐藏,将使滚动条消失。出于测试目的,我将其设置为100%。谢谢你指出我会修好这篇文章的。问题是当我既不指定对象大小也不指定“加载的div”大小时。对象标记的大小始终调整为150*100px左右,并添加滚动条(如果加载的内容更大)。如果我发送GET请求并通过XMLHttpRequest()对象加载页面,则不会发生这种情况,尽管后者中没有使用对象标记。如果不使用对象标记(推荐),则不会出现问题。不同浏览器的对象实现仍然有点不同谢谢。我希望能有更多的见解,但我想没什么好说的。再次感谢!
Content.innerHTML='g...g';
function load_home() {         
     var url = "http://localhost/inner_load/page_test.html";
     var method = "GET";
     var async = true;
     var request = new XMLHttpRequest();
     request.onload = function () {
        var data = request.responseText;
        Content.innerHTML=request.responseText;
     }
     request.open(method, url, async);
     request.send();
  }
  <div id="content"> //500px
    <object> //at 100% it is also 500px
       <div>Loaded content</div> //this is 1000px and hence the scrollbar on a parent object
    </object>
</div>