【问题标题】:HTML redundancy in navigation导航中的 HTML 冗余
【发布时间】:2012-08-23 13:23:28
【问题描述】:

来自 C++ 的人告诉我,代码重复是做错事的巨大危险信号。现在,当我用 HTML 制作导航菜单时,我必须将它复制到我想要的每个页面中,这违反了我所知道的关于干净代码的一切。这只是 HTML 的方式,还是在单独的 HTML 文件中定义导航菜单并使用 iframe 将其显示到页面中会更简洁?

【问题讨论】:

标签: html navigation redundancy


【解决方案1】:

我同意你的观点。将导航栏放在单个 html 文件中并单独加载会更干净。但是,我建议您使用一些服务器端脚本(如 PHP)将所有 html 放在一起,而不是将其加载到 iframe 中。

您可以制作一个非常简单的 PHP 脚本,将多个文件的 html 连接起来,然后将其输出到浏览器。如果在你的情况下这是可能的,这就是我会做的。

【讨论】:

  • 一定要使用服务器端脚本而不是 iFrame
  • 拜托,拜托,拜托,@Jake,不要为此使用 iframe。
  • @mdepolli haha​​ 我不会,我不会,这就是我问的原因!我对 Web 开发比较陌生,所以这只是我想到的第一件事
  • 关于我可以使用什么脚本在 Tomcat 服务器上执行此操作的建议?这一切都在一个 JSF 项目中
  • 据我所知,JSF 应该已经支持您想要完成的工作。看看this article。基本上,您要做的是读取导航栏的 html 文件的内容,然后使用模板引擎将其写入主页模板中的变量。这比简单的连接要复杂一些,但如果你能弄清楚这一点,那就更干净了。
【解决方案2】:

如果您只是在处理静态 html 页面,请尽可能使用服务器端包含:

http://en.wikipedia.org/wiki/Server_Side_Includes

简而言之,在一个单独的文件中定义您的代码,然后每个模板只引用该文件,无论您告诉它到哪里。

在页面中“包含”模板样式文件有一百零一种不同的方式,这取决于我猜你的主机的设置类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    相关资源
    最近更新 更多