Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.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
Html 使用divs创建类似于iframe的内容_Html - Fatal编程技术网

Html 使用divs创建类似于iframe的内容

Html 使用divs创建类似于iframe的内容,html,Html,最近在我的编程课上出现了一个问题:是否可以创建类似于iframe的东西,但只使用div和javascript/css。老师说这是可能的,但由于我对编程一无所知,我不知道如何编写这样的代码。有没有人能举一个简单的例子来说明如何做到这一点呢?很可能你的导师正在考虑使用类似的方法 <div style="width:500px;height:500px;overflow:scroll;"></div> 或 这两种方法都可用于生成带有滚动条溢出的固定大小div。您甚至可

最近在我的编程课上出现了一个问题:是否可以创建类似于iframe的东西,但只使用div和javascript/css。老师说这是可能的,但由于我对编程一无所知,我不知道如何编写这样的代码。有没有人能举一个简单的例子来说明如何做到这一点呢?

很可能你的导师正在考虑使用类似的方法

<div style="width:500px;height:500px;overflow:scroll;"></div>



这两种方法都可用于生成带有滚动条溢出的固定大小div。您甚至可以使用AJAX从另一个页面加载内容并将其插入div。但是,与iframe不同,它们不能用于显示来自另一个域的内容(除非它允许CORS)

我认为这是可能的,iframe本质上是从另一个位置嵌入内容资源,无论是本地域还是外部域。在您希望使用jquery进行的请求类型中,复制这一点可能很容易,也可能很难。使用jquery的简单方法是 $.ajax({url:urlToResource,success:function(data){ $('.contentDiv').html(数据); });


.contentDiv{
溢出:自动;
宽度:200px;
高度:200px;
}
同样,这一切都取决于什么类型的资源以及远程域上是否有ajax块。尽管有一个简单的php文件,但还有另一种方法可以解决这个问题

<?php

  print file_get_contents("http:://pathToResource.com");

?>


这应该足以让你开始调查自己了。但作为一个提示,尽量避免使用iframe,因为iframe比它们的价值更麻烦,而且对于当前的技术(如html5等)来说,它们已经过时了。

如果你说的是在页面中显示外部内容而不使用iframe,那么你可以使用AJAX来加载内容从另一个页面,甚至从一个服务中输入,并将其呈现到一个div中。请参见。

“类似”的方式是什么?您可以使用
overflow:scroll;
模拟div中的滚动条;但这就是我所知道的全部内容!可能您可以使用AJAX在div中加载另一个页面。您甚至如何推断出询问者要求模拟物理属性
iframe
的属性,例如滚动条,而不是其他功能属性?没有滚动条的情况下,可能存在
iframe
sಠ_ಠ因为使用divs完全复制iframe的功能是不可能的,我想他们的讲师会知道。滚动/自动溢出是div可以获得的最接近iframe的功能。为了获得部分支持,您可以使用AJAX获得另一个HTML页面的主体,并将目标div的
innerHTML
设置为该值在完全支持的情况下,您可以将脚本和样式表注入当前页面的头部。HTML5包括
iframe
s,事实上,它增强了它们。当然,它们可能并非在所有情况下都有用,但它们擅长的一件事是沙箱。我并不是说它们不属于任何地方,但它们可能是一件麻烦事,可以轻松解决执行。
<style type="text/css">
.contentDiv {
 overflow:auto;
 width:200px;
 height:200px;
}
</style>

<div class="contentDiv"></div>
<?php

  print file_get_contents("http:://pathToResource.com");

?>