1

我有一个带有标题、左侧菜单和主要内容的简单网站。
我已经用一个静态页面制作了它,(index.php)然后jquery通过单击菜单项来更改主要内容:

$('#divR').load('chapters/abc.php');

我在某处被告知我应该改变这种安排(没有解释 - 为什么)为每个主要内容使用单独的页面,然后使用php include在每个页面上包含标题和左侧菜单。

有人可以帮助解决这个难题吗?

4

2 回答 2

3

使用 ajax 加载或在 php 中包含页面都可以。但是,要显示新包含的页面,您需要刷新整个页面。如果您使用 jquery 请求页面,它将异步加载,无需刷新页面。

请记住,您必须选择最适合的选项来增强用户体验。我从不使用 ajax 加载完整页面,因为有传言说 google 不会索引这些异步链接。然而,有人说 google bot 是一种功能齐全的浏览器,不会跳过 ajax 调用。我不知道,所以我保持它保存并通过整页刷新加载重要的“主要”内容,访问另一个网址。这也将使浏览器返回和下一步(历史)按钮工作。它不会与 ajax 调用一起使用,因为它们是异步的。

例如,我使用 ajax 为我的图片库加载新的缩略图,或者使用新条目(重新)填充表格,或者显示用户消息,或者更新一些变量,......

于 2013-10-01T07:42:50.363 回答
1

<?php include "file.html"; ?>现在经常使用,因为它比 jQuery 有一些优势.load

我在网站上有很多其他脚本,不知何故,如果我使用.load,与该内容交互的 jQuery 不起作用,因为我认为它是在之后加载的。即使它在<head>并且您不使用$(document).ready(function() { CODE });并且应该首先加载它......

但是如果您使用<?php include "file.html"; ?>,内容将在您的 jQuery 加载之前加载,因此 javascript 可以与此文件中加载的内容进行交互。

我不知道如何解释,但至少它对我不起作用,也许是因为它php是一种服务器端语言。

于 2014-03-28T20:52:00.000 回答