1

如果我正在制作一个网站,将新页面放在导航栏上并从每个页面都可以看到的最快方法是什么?每次创建新页面时,导航栏都会更新,然后我必须将新代码复制并粘贴到我网站中每个页面的代码上(我想。)我刚刚完成了主页,所以它是还没有问题,但我不想继续,直到我解决了这个问题,所以我以后不会遇到麻烦。有没有办法将导航栏的代码放到不同的 HTML 文件中,然后将页面链接到它,以便它们都保持同步?对不起,如果这令人困惑,但请帮助我。非常感谢,我对 HTML 和 CSS 很陌生,但我愿意学习优化它所需的一切。

更新: 我现在使用 PHP 命令进行这项工作:

<?php include 'PHP/nav_bar_code.php'; ?>

4

2 回答 2

2

基本的 AJAX 或 XMLHTTPRequest 调用是(不借助库):

<script>
function loadNavigation() {
  var xmlhttp;
  if( window.XMLHttpRequest ) {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  } else {// code for IE6, IE5
    xmlhttp=new ActiveXObject( "Microsoft.XMLHTTP" );
  }
  xmlhttp.onreadystatechange=function() {
    if( xmlhttp.readyState==4 && xmlhttp.status==200 ) {
      //--- change this to your navigation element
      document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
  //--- change the filename to the navigation file
  xmlhttp.open("GET","ajax_info.txt",true);
  xmlhttp.send();
}
</script>

指定文件名时,请注意以上内容适用于平面文件系统,如果您使用的是多级文件结构,您可能必须指定导航文件的完整 URL 路径 - 如果这有意义的话。

于 2013-07-31T13:19:00.847 回答
1

有几种方法可以实现这一点。一个简单的方法是使用 CMS 来创建您的网站。像 WordPress、Joomla、Drupal、Plone 等……另一种方法可能是使用评论中提到的 AJAX。jQuery 为此提供了一个简单的方法。您要做的就是在每个页面的开头创建一个 div 并使用 .load() 方法来加载您的标题页面。使用 ajax 将页面加载到框架中可能是一个更好的设计。这是您布局主页并设置内容容器的地方,您的每个后续页面都将加载到该容器中......

另一种方法是使用 php 文件和include包含标题页的命令。在这里找到更多信息。

如果您热衷于进入 AJAX,那么这本书很棒 - http://www.apress.com/9781590596678

于 2013-07-31T08:26:09.873 回答