2012-07-28 71 views
0

一个很简单的问题:PHP的包括文件,其中包含了HTML标记和js脚本

  • “Headers.html”,包含了一些被JS脚本驱动的下拉菜单。脚本位于头部,菜单位于主体部分。

  • “Content1.html”,“Content2.html”等都有自己的< head>和<体>,另外它们含有PHP包括<体内声明>在的元素带来的“ Headers.html”。

这样的安排是非法的,因为它重复< head>和<体>生成的文件中,对不对?但是,如果我没有在“headers.html”中定义< head>,那么最终文件的主体中间会出现js脚本。我想将所有脚本放入第三个文件中,该文件将包含在内容文件的< head>内,但这意味着“headers.html”中的菜单不能作为独立工作,这是一个烦恼。那么,包含脚本的html文件的最佳做法是什么?

+0

为什么在需要使用菜单的任何位置包含脚本文件是一个巨大的烦恼? – 2012-07-28 07:14:03

+0

这不是一个很大的烦恼,但我想知道是否将脚本和标记合并在一起是“最佳实践”。 – aag 2012-07-28 19:03:43

回答

1

将脚本和标记严格保存在单独的文件中,并在需要时包含它们。

+0

同意。但是,有副作用。如果包含的文件通过相对路径引用脚本文件,则路径在包含文件中可能不再有效。没有使用绝对路径,我不明白这是如何在逻辑上解决的。 – aag 2012-07-28 19:05:24

+0

@aag因此,这些包含文件就像库一样。如果你真的无法为你的文件定义某种简单的文件系统布局(为什么不呢?),然后尝试在服务器端解决它:使用重写指令来模拟某种虚拟文件系统布局,这种布局可能与您使用的每个项目不同这些文件在。 – arkascha 2012-07-28 19:37:14

+0

一种可能的策略可能是(1)包含文件,(2)脚本文件,以及(3)内容文件都在根目录下一级。或者,如果超过1个级别,则所有1个级别下降一个通用目录。这样,Content目录中对Script目录的相对引用将与Include目录中的相同。我的想法是直的还是乱码? – aag 2012-07-29 05:26:21