Javascript 寻找一个演示网站,使用尽可能多的网页重复使用的最简单的形式

Javascript 寻找一个演示网站,使用尽可能多的网页重复使用的最简单的形式,javascript,menu,web,include,Javascript,Menu,Web,Include,在介绍web课程中教学生时,我想找到一种最直接的方法来构建一个大约7页的多页静态站点,而不需要他们制作7个不同的页面 显然,我可以让他们制作一个单独的页眉、页脚和菜单文件,并使用服务器端包含,只需将包含放在7个不同的内容页面上,但这感觉很脏 过去我让他们这样做:-这是一个以作业为模型的快速实验: 但我觉得应该有一种更干净/更简单的方法来使用javascript或php实现它——但我不确定如何实现 基本上我想要一个带有菜单的主页,当菜单项被点击时,它会加载不同的内容。我认为最好是将内容放在七个不同

在介绍web课程中教学生时,我想找到一种最直接的方法来构建一个大约7页的多页静态站点,而不需要他们制作7个不同的页面

显然,我可以让他们制作一个单独的页眉、页脚和菜单文件,并使用服务器端包含,只需将包含放在7个不同的内容页面上,但这感觉很脏

过去我让他们这样做:-这是一个以作业为模型的快速实验:

但我觉得应该有一种更干净/更简单的方法来使用javascript或php实现它——但我不确定如何实现

基本上我想要一个带有菜单的主页,当菜单项被点击时,它会加载不同的内容。我认为最好是将内容放在七个不同的文件中,但我可以想象,在一个页面中,所有内容都在同一个JS中——记住,这个网站应该非常简单

我想将其限制为html/css/js/php,最好是js或php,而不是两者兼而有之

只有索引页控制(和加载)所有内容


谢谢

如果您想创建一个更现代的框架,那么您应该研究使用javascript动态显示内容(如您在问题中所建议的)。为此,我将使用像jQuery这样的框架,因为它使异步请求调用变得更加简单。要做到这一点,您需要为单个页面编写代码,并为动态内容标记一个特定区域

在服务器端,您可以设置页面或数据库,以返回主内容区域,该区域将根据请求进行更改

客户端可以使用jQuery将请求的内容放入内容区域

$('#contentArea').load('url', function() {
     //callback area in case there is other stuff you want to do with js
     location.hash = 'blah';
});
更改页面的hashmark可能是有意义的,这样页面看起来仍然是静态的,并且随着内容的变化可以链接

location.hash = 'blah';
此外,您还需要在单击默认链接行为时返回false来覆盖它们

myLink.click = function() { 
     $('#contentArea').load('url', function() {
         //callback area in case there is other stuff you want to do with js
         location.hash = 'blah';
     });
     return false;
}

我认为这对学生来说是一堂很好的课,因为它展示了客户端、服务器端之间的区别,以及如何通过javascript动态连接它们

如果您想创建一个更现代的框架,那么您应该研究使用javascript动态显示内容(如您在问题中所建议的)。为此,我将使用像jQuery这样的框架,因为它使异步请求调用变得更加简单。要做到这一点,您需要为单个页面编写代码,并为动态内容标记一个特定区域

在服务器端,您可以设置页面或数据库,以返回主内容区域,该区域将根据请求进行更改

客户端可以使用jQuery将请求的内容放入内容区域

$('#contentArea').load('url', function() {
     //callback area in case there is other stuff you want to do with js
     location.hash = 'blah';
});
更改页面的hashmark可能是有意义的,这样页面看起来仍然是静态的,并且随着内容的变化可以链接

location.hash = 'blah';
此外,您还需要在单击默认链接行为时返回false来覆盖它们

myLink.click = function() { 
     $('#contentArea').load('url', function() {
         //callback area in case there is other stuff you want to do with js
         location.hash = 'blah';
     });
     return false;
}
我认为这对学生来说是一堂很好的课,因为它展示了客户端、服务器端之间的区别,以及如何通过javascript动态连接它们