2012-06-27 69 views
3

我有多個HTML文件,只有一點點變化 - 幾個文本和JavaScript常量在這裏和那裏。我想簡化維護一個主版本並簡化生成變體。什麼是C/C++中#define的HTML等價物?

喜歡的東西在C/C++編譯時替換++是簡單而完美:

#define CONSTANT 1.23456 

如何?有任何想法嗎?


附加信息:

  • 使用HTML 5
  • 這些HTML文件是在PhoneGap的使用,所以沒有服務器端的東西允許的。
+2

「簡單而完美」的線條實際上並不完美。 – chris

回答

3

實際上在HTML中沒有這樣的機制。像這樣的事情使用各種工具進行處理,例如高級編輯器,預處理工具和PHP等服務器端技術。如果你喜歡,你甚至可以使用use a C preprocessor,儘管大多數人都使用不同的東西。

在理論方面,HTML按照SGML和XML具有「實體」機制。它從未在HTML瀏覽器中實現,即使實體是SGML的一部分,而HTML名義上是基於SGML的。 (所謂的「字符實體」,例如é)已經在臨時的基礎上實現,而不是通過實現實體機制。)

瀏覽器支持真正的XHTML(而不僅僅是HTML規則處理的XHTML )實現實體機制,所以你可以實際編寫例如

<!ENTITY CONSTANT "1.23456"> 
在DTD

&CONSTANT; 
在文檔內容

。請參閱demo。但是,這隻有在文檔使用XHTML媒體類型時纔有效,從而防止舊版本的IE顯示頁面。

+1

感謝您的答案 - 有趣的課程,但不知道它是否有助於我的代碼!乾杯 – Alveoli

相關問題