你能一起编译html文件来模拟'include'函数吗?

问题描述:

我爱上海社会科学院你可以创建混入并重新使用您的代码通过包含编译后出口各种SASS文件(取决于您的应用程序)/保存的原因。 PHP可以做一些相同的事情,但我从来没有见过一个HTML页面被分解成各种HTML文件,并在导出/保存时被编译为一个整体。你能一起编译html文件来模拟'include'函数吗?

我不能写PHP,我不希望这样的开销只是为了让事情变得更容易,并具有调整一个文件(即“navigation.html”),而不是在网站上的每一页更改代码。

为此我问以下两种之一:

  1. 一个编译器,如Codekit,可以合并部分的HTML文件一起
  2. 一个HTML/JavaScript的/ jQuery的/阿贾克斯(< - 不带,请指导)的功能体验,在负载

有超过50页,调整一件事跨越可以是一个痛苦,但有每个相同的代码也可以起到一定的均匀性,并创建包含HTML部分组合在一起如surance。这就是为什么我希望有一个解决方案,我的要求。

+1

据我所知,它不是简单地在HTML可能,直到你用js,角或PHP或任何其他编程语言。您可以在一个单独的文件中创建一个公共部分,然后将其包含在主文件中。与所有页面的页眉,页脚和导航一样,您可以为所有页​​面创建单独的文件,然后将其包含在主文件中。 – Abhijeet

你的第二个选择是什么,我跟你创建通用的“组件”,并根据东西,如父组件的地方插入时的ID工作,它会表现在从JS或jQuery的不同“功能不同的方式或负载库“,例如,如果菜单组件的父div是'mainMenu',它将调用显示主选项的情况。当菜单部件父ID为“负载”其显示负载按钮并在其上添加代码来加载文件...

页面1

<div id='mainMenu'></div> 

然后页面2

<div id='load'></div> 

然后jQuery

$(document).ready(function(){ 
    component = "<ul id='menu'><li></li></ul>"; 
    $(body).find("div").each(function(){ 
     switch($(this).attr("id") { 
      case "mainMenu": 
       code to add functionality to component; 
       break; 
      case "load": 
       code to add functionality to component; 
       break; 
      default: 
       code to manage error; 
     } 
    }); 
}): 

这只是我认为你可以做的一个例子。

您可以使用w3-include-htmlw3.js

例子:

<div w3-include-html="content.html"></div>

HTML Include

+0

你能找到关于浏览器支持的东西吗?我从来没有读过这样的东西。我认为到IE 9.0是最低限度。 –

+0

我找不到任何有关支持的信息。如果有帮助,它是今年创建的。 https://www.w3schools.com/w3js/w3js_downloads.asp – Galeaettu