2

背景: 我目前的工作环境涉及到许多不断更新的导航链接,但系统管理员不允许使用 PHP(或任何动态服务器)。这令人沮丧。

问题: 有没有办法使用 JS 为 HTML 实现类类结构,以便在我的 HTML 中使用临时 PHP 方法“包含”?

示例: 例如,我非常感谢在 PHP 中如何将我网站顶部的导航链接模块化到一个名为 navbar.php 的文件中,然后将其包含到我所有单独的页面中。对 navbar.php 进行更改后,所有其他页面都将反映更改。不幸的是,我的工作流程迫使我以卑微的方式更新所有网页。可以用JS吗?

谢谢!

4

5 回答 5

7

使用在页面加载时动态创建导航栏的js文件并将其放置在所有页面中,您还可以检查它正在使用哪个页面documnet.location并突出显示等等。此文件中的一项更改,所有页面都更改

但是,如果 JavaScript 被禁用,这将违反优雅降级!!!您的网站没有任何主导航菜单。您将不得不找到解决方法。创建一个基本的纯 html 导航栏,其中包含您的一致链接。包括一个 js 文件,用更好的栏替换它,如上所述。

于 2012-10-02T18:59:28.040 回答
1

使用jQuery HTML 函数jQuery Load 函数可以轻松地将 HTML 代码插入 DIV 。基本上,你给它一个 div 和 HTML 代码或一个 url,它会自动用给定 URL 的 HTML 页面填充 div。

据我所见,您应该能够仅使用 jQuery 来实现您可能需要的任何动态行为。仍然存在一些限制,例如持久性,并且您的客户必须激活 JS 才能使其工作(但让我们面对现实吧,99% 的客户会这样做)。

于 2012-10-02T19:04:05.473 回答
0

为什么是。http://en.wikipedia.org/wiki/Server_Side_Includes 服务器端包含可以帮助您解决这个问题。它可能是你能得到的最接近的。

于 2012-10-02T18:57:06.933 回答
0

在纯 HTML 中创建导航菜单。然后,为页面内容创建一个 main div,将其留空。最后,使用 AJAX 检索每个页面的内容(作为单独的纯 HTML 文件)并div用它替换 main 的内容。

您可以使用 jQuery 框架的 AJAX 功能。

于 2012-10-02T19:03:17.967 回答
0

您也可以使用 html 对象标记来包含 html,请参见http://www.w3schools.com/tags/tag_object.asp

于 2012-10-02T19:08:57.470 回答