靜態 HTML 文件怎麼從外部調入 HTML 模板(如頭部,頁尾這些公共的部分)?


你可以先載入整個頁面的框架,用一些佔位標籤來代替你要的不同頁面模塊比如 header 和 footer,再用 JavaScript 發送 AJAX 請求獲取這些靜模板,寫到佔位元素的 innerHTML 里。


我能想到的所有能達到讓頭尾公用的辦法:

1、本地合併,即將HTML硬拆成頭、尾、內容三個部分的文件,在預覽或者發布之前用腳本手工合併。很久以前用過,沒有後台的時候使用效果不錯。

2、自己寫代理(比如用node),請求文件的時候自動加上頭尾文件。

3、王偉康說的iframe。

4、顧軼靈提到的使用ajax動態拉取填充。

5、服務端shtml包含。

6、web伺服器(比如IIS)中設定包含。

7、後台模板引擎處理(字元串拼接)。

8、用圖片、flash等外部資源做(比iframe更蛋疼……)


純html做不到,至少要用到js或者後端框架支持。

一般都是用MVC框架的template功能來做這樣的事,也就是MVC中的V。你可以參考python的django框架,php的zend框架,ruby的rails框架,java的structs框架,所有的template都是大同小異。


Part I.

可以的,使用框架標籤 &