Javascript 能够使用单个html作为';包括';转到另一个html页面

Javascript 能够使用单个html作为';包括';转到另一个html页面,javascript,php,html,Javascript,Php,Html,我四处寻找这个问题的答案,但似乎找不到确切的“单词”或“短语”来找到相关的答案 我的问题是,是否有可能使用一个单独的html作为另一个html页面的“包含” 示例:能够使用一个包含CSS样式的文件,以便同一个文件可以自动出现在我包含它的站点的每个页面上 我制作了一个扩展名为.html的模板,它只包含整个网站主题的页眉和页脚。通常,我会将这些模板的内容复制并粘贴到每个新的html页面,然后为该页面添加唯一的正文内容 我想做的是制作一个扩展名为.html的模板,只包含我的页眉和页脚,这样我就可以像i

我四处寻找这个问题的答案,但似乎找不到确切的“单词”或“短语”来找到相关的答案

我的问题是,是否有可能使用一个单独的html作为另一个html页面的“包含”

示例:能够使用一个包含CSS样式的文件,以便同一个文件可以自动出现在我包含它的站点的每个页面上

我制作了一个扩展名为
.html
的模板,它只包含整个网站主题的页眉和页脚。通常,我会将这些模板的内容复制并粘贴到每个新的html页面,然后为该页面添加唯一的正文内容

我想做的是制作一个扩展名为
.html
的模板,只包含我的页眉和页脚,这样我就可以像
include template.html
这样做,它会自动将
template.html
页面的内容放在每个页面上,这样我就不必每次都复制和粘贴。我发现更新/维护包含页眉和页脚脚本的站点的每个页面越来越困难,因为在进行更改时,我必须查找并替换这些脚本的每个实例,并且必须在整个站点中传播


我知道html实际上没有
include
函数,但我认为应该有办法通过其他语言(如PHP甚至JavaScript)来解决这个问题?我只是好奇它是否可能,如果可能,如何实现?

这不能通过HTML实现,您可以使用PHP包含或使用以下W3学校示例:

PHP示例 template.html重命名为template.php

<html>
<?php include template.php ?>
</html>

这不能通过HTML完成,您可以执行PHP包含或使用以下W3学校示例:

PHP示例 template.html重命名为template.php

<html>
<?php include template.php ?>
</html>

我想你有几个不同的选择。使用PHP,您可以执行以下操作:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>

欢迎来到我的主页!
一些文本

还有一些文字

使用AngularJS,您可以使用以下内容:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>

仅使用HTML5,您就可以尝试以下内容:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>


这有助于回答你的问题吗?

我想你有几个不同的选择。使用PHP,您可以执行以下操作:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>

欢迎来到我的主页!
一些文本

还有一些文字

使用AngularJS,您可以使用以下内容:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>

仅使用HTML5,您就可以尝试以下内容:

    <!DOCTYPE html>
    <html>
        <body>

            <h1>Welcome to my home page!</h1>
            <p>Some text.</p>
            <p>Some more text.</p>
            <?php include 'footer.php';?>

        </body>
    </html>
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
        <body ng-app="">
            <div ng-include="'myFile.htm'"></div>
        </body>
    </html>
    <object name="foo" type="text/html" data="foo.inc"></object>


这有助于回答您的问题吗?

您提出的问题可能有不同的方式:

帧和iframe

看看这两个标签

  • 框架:
  • iframe:
我不推荐这种解决方案,因为HTML5不支持“frame”,而“iframe”是为了在网站中包含其他网站,而不是网站的一部分。您将无法将CSS/JS添加到“iframe”标记中的代码中

后端解决方案

根据您正在使用的网站类型,您可以包含其他文件。例如,在php中:

include('youcode.html');
HTML5解决方案

您还可以使用“对象”标记:


这可能是您的最佳选择,请参见:


享受:)

你所要求的可能有不同的方式:

帧和iframe

看看这两个标签

  • 框架:
  • iframe:
我不推荐这种解决方案,因为HTML5不支持“frame”,而“iframe”是为了在网站中包含其他网站,而不是网站的一部分。您将无法将CSS/JS添加到“iframe”标记中的代码中

后端解决方案

根据您正在使用的网站类型,您可以包含其他文件。例如,在php中:

include('youcode.html');
HTML5解决方案

您还可以使用“对象”标记:


这可能是您的最佳选择,请参见:


享受:)

如果PHP是您的首选语言,请查看。您的语法实际上是正确的:
include'template.html'
但该语句必须包含在PHP文件中,例如
index.PHP
感谢您的快速回复,Marcus。。。我真的同意你关于那件事的看法,但我的主要问题是。。。包含my、Navbar和Footer的附带html文件与当前文档的样式是否存在兼容性问题?示例:页脚加载较早,因此它将位于“我的内容”区域上方?听起来您所追求的似乎是一个模板引擎,例如PHPSplit,将页眉和页脚分到单独的文件中。然后将它们包含在您的主模板中,无论您在哪里需要它们
index.php
。。。不管怎样,页面上还有更多类似的内容。如果PHP是您选择的语言,请查看可能重复的内容。您的语法实际上是正确的:
include'template.html'
但该语句必须包含在PHP文件中,例如
index.PHP
感谢您的快速回复,Marcus。。。我真的同意你关于那件事的看法,但我的主要问题是。。。包含my、Navbar和Footer的附带html文件与当前文档的样式是否存在兼容性问题?示例:页脚加载较早,因此它将位于“我的内容”区域上方?听起来您所追求的似乎是一个模板引擎,例如PHPSplit,将页眉和页脚分到单独的文件中。然后将它们包含在