如何在一个HTML中添加另一个纯HTML?

7

我有一个纯HTML页面,例如sample.html。我需要将此HTML包含到另一个纯HTML中,例如Orginal.html。如何做到这一点?在我的sample.html中有一个标题图像。它应该出现在Orginal.html页面的顶部。


你想要动态完成这个任务吗?你想使用什么编程语言?Javascript、php、asp.net等等? - Peter
2
我理解他真正谈论的是纯HTML,没有其他东西... - Michał Chaniewski
5个回答

5
如果你正在使用Apache Web服务器,可以尝试使用服务器端包含(SSI)。了解更多

1
看起来 IIS 也支持这个。 http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/eced0b89-e052-42ff-baa8-751dd191c3b5.mspx?mfr=true - Neil Aitken

4

在纯HTML中,您无法做到这样的事情,除非使用框架或iframe元素。但最好手动合并它们...


如果只涉及少量文件,最好的解决方案是更新HTML - 如果它是纯HTML,那么无论如何都需要进行编辑,为什么要让它变得更加复杂。在这种情况下,简单的编辑是最实用的。我会使用一些服务器端的东西,但如果我们只谈论几个文件,最好的解决方案就是只更新HTML。 - Michał Chaniewski

3
这里是一个纯HTML的示例,演示如何使用iframe进行操作。尽管HTML 4规范中没有提到,但所有主要浏览器都支持它(并在HTML 5规范中有所体现)。
<body>
<h1>This is original page</h1>
<p>Some content on original page.</p>
<iframe src="sample.html" width="600" height="300"></iframe>
</body>

您可以调整宽度和高度,如果您希望页面更加无缝,还可以去掉边框。
请注意,对于此问题,JavaScript 解决方案可能存在问题,特别是在移动设备上浏览时。
另外需要注意的是,避免使用 frameset 方案,因为它们不是有效的标记。

1

您可以使用JavaScript将一个文档中的HTML加载到另一个文档中。使用jQuery工具包可以轻松完成此任务:

$("The ID of a container (a div element for instance) in which you want to load
the contents of a HTML file").load("path to html file you want to load");


<div id="inserthere" />


$(function ()
{
    $("#inserthere").load("loadme.html"); // Load the contents of loadme.html
                                          // and stuff it in the div with the
                                          // ID of "inserthere"
});

"包含的文件"仅在DOM完成加载后可见...它还会进行Ajax调用以显示内容。这看起来不太对。 - Gaurav Sharma

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接